0
我有一个XML文件,我试图解析,它是UTF-16编码。我想将其转换为UTF-8,以便将其放入文档中。如何通过UTF-8流传输UTF-16文件?
当我在vi打开文件时,我看到类似<^@ T^@一^ @ G^@>^@
这是我认为的代码将工作:
InputStream in = _context.openFileInput(_fileName);
InputSource is = new InputSource(new InputStreamReader(in, "UTF-8"));
is.setEncoding("UTF-8");
doc = builder.parse(is);
这不能正常工作,在流入字符串之后,无法识别的字符仍然存在。
此外,试图解析文档时,我得到的错误是:
org.xml.sax.SAXParseException: name expected (position:START_TAG <null>@1:1 in [email protected])
如果文档是UTF-16编码,则将其解码为UTF-16。您正在解析Java对象(节点)。为什么要将UTF-8引入混合? – McDowell 2012-02-18 00:31:51