Ошибка SAX - MalformedByteSequenceException: недопустимый байт 1 из 1-байтовой последовательности UTF-8.

Ошибка SAX - MalformedByteSequenceException: недопустимый байт 1 из 1-байтовой последовательности UTF-8.

проблема

Когда некоторые специальные символы UTF-8 внутри XML-файла и ваш SAX-анализатор не настроены для правильного синтаксического анализа UTF-8, выдается следующее исключение.

com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException:
Invalid byte 1 of 1-byte UTF-8 sequence.
...

Решение

Решение довольно простое, получить содержимое в формате UTF-8 и переопределить источник входного сигнала SAX.

File file = new File("c:\\file-utf.xml");
InputStream inputStream= new FileInputStream(file);
Reader reader = new InputStreamReader(inputStream,"UTF-8");

InputSource is = new InputSource(reader);
is.setEncoding("UTF-8");

saxParser.parse(is, handler);

Вы можете прочитать полный пример здесь -how do read UTF-8 XML file with SAX parser