У меня есть XML-файл, который я пытаюсь проанализировать, и он в кодировке UTF-16. Я хотел бы преобразовать его в UTF-8, чтобы поместить в документ.
Когда я открываю файл в vi, я вижу что-то вроде <^ @ t ^ @ a ^ @ 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 java.io.InputStreamReader@4059c510)