Google의 제공 업체 중 하나가 때때로 UTF-8로 인코딩 된 문서로 태그가 지정되었지만 UTF-8 문자 세트에 포함되지 않은 문자를 포함하는 XML 피드를 보내고 있습니다.XML 파일의 잘못된 인코딩 수정
DocumentBuilder.parse(ByteArrayInputStream bais)
는 다음과 같은 예외가 발생합니다 :
org.xml.sax.SAXParseException: Invalid byte 2 of 2-byte UTF-8 sequence.
을하는 방법을 "캡처"이러한 문제를 초기에 거기에 이러한 문자가 발생하는 경우에 예외를 발생하고, DOM 객체를 구축 중지 파서 원인 예외 (즉, 스트림에서 해당 문자를 찾아 제거하는 것)를 피하십시오? 내가 찾고있는 것은 잘못 인코딩 된 문서에 대한 대체 최선책입니다. 올바른 해결책은 분명히 출처의 문제를 공격하고 올바른 문서 만 전달되는지 확인하는 것이지만 불가능할 때 좋은 접근 방법은 무엇입니까?
팁 주셔서 감사. 그것은 예외를 피했지만 불행히도 불법적 인 문자가 추출 (및 필요)하는 식별자 문자열 안에있는 것처럼 보이기 때문에 불행히도 그다지 도움이되지 못했습니다. 그리고 지금은 잘못된 인코딩을 얻습니다. 나는 단지 콘텐츠 제공자들이 그들의 오류를 고칠 때까지 기다려야한다고 생각한다. – Burre