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