'Character conversion error'에 해당되는 글 1건

  1. 2009.10.20 XML 파싱 에러!!!!
스터뒤ºㅁº2009. 10. 20. 19:24
SAX Parser로 xml을 파싱하는데 다음과 같은 에러메시지가 뜨는 현상이 생겼다.

org.xml.sax.SAXParseException: Character conversion error:"Unconvertible UTF-8 character beginning with 0xbf" (line number may betoo low)

파싱하려고 하는 xml 파일 상단에 xml version과 encoding 방식이 적힌 헤더가 없어서 그러는것으로 판단!!
<?xml version="1.0" encoding="EUC-KR"?>   <- 요런거죠//


파싱 에러가 떴던 java source
SAXBuilder sax = new SAXBuilder();
        Document doc = null;

        try {
            doc = sax.build(dir);
        } catch (Exception e) {
            e.printStackTrace();
        }

단순히 xml 경로만 주고 문서를 가져오도록 했었습니다.


encoding 방식 설정 후 문서를 가져오기 위해 수정된 java source
SAXBuilder sax = new SAXBuilder();
        Document doc = null;
        try {
            File xmlFile = new File(dir);
            FileInputStream stream = new FileInputStream(xmlFile);
            InputStreamReader reader = new InputStreamReader(stream, "EUC-KR");
            doc = sax.build(reader);
        } catch (Exception e) {
            e.printStackTrace();
        }

보시면 알겠지만 빨간 글씨로 적힌 부분이 살짝 바꼈습니다.
저렇게 InputStreamReader로 encoding 방식을 적어주니 파싱이 잘 되더군욧+_+ㅎ
Posted by 룹씨