Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 程序如何决定xml文件的编码?_Java_Xml_Encoding_Utf 8 - Fatal编程技术网

Java 程序如何决定xml文件的编码?

Java 程序如何决定xml文件的编码?,java,xml,encoding,utf-8,Java,Xml,Encoding,Utf 8,在处理(解组)xml文件时,我对xml编码有疑问。 我们在文件的开头指定xml文件的编码,如下所示 <?xml version="1.0" encoding="UTF-8" standalone="yes"?> 我的问题是,在程序读取这一行之后,它决定以下内容是用UTF-8编码的。但是要阅读第一行,程序如何确定它是以UTF-8编码的?我的意思是,当读取字节流时,程序如何知道它需要对第一行使用哪种编码 问候,, Mayuran它写在第F.1节中。xml规范的定义: F.1无外部编

在处理(解组)xml文件时,我对xml编码有疑问。 我们在文件的开头指定xml文件的编码,如下所示

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

我的问题是,在程序读取这一行之后,它决定以下内容是用UTF-8编码的。但是要阅读第一行,程序如何确定它是以UTF-8编码的?我的意思是,当读取字节流时,程序如何知道它需要对第一行使用哪种编码

问候,,
Mayuran

它写在第F.1节中。xml规范的定义:

F.1无外部编码信息的检测

因为每个XML实体都没有外部编码 非UTF-8或UTF-16编码的信息必须以XML开头
编码声明,其中第一个字符必须是
。我在看说明书,知道它在那里,但是在你发布上面的内容之前,我还没有深入到F.1。很好。@RobAu,谢谢你的回答,但我还是无法理解,无法阅读课文“如果没有字节顺序标记,则应读取前几个字节并尝试不同的编码,如UTF-16。从技术上讲,附录F中给出“字符串”的编码是非规范性的;XML实际上并没有定义没有外部编码元数据的处理,而只是,呃,说明如何处理。