SAX Parser로 xml을 파싱하는데 다음과 같은 에러메시지가 뜨는 현상이 생겼다.
파싱하려고 하는 xml 파일 상단에 xml version과 encoding 방식이 적힌 헤더가 없어서 그러는것으로 판단!!
파싱 에러가 떴던 java source
단순히 xml 경로만 주고 문서를 가져오도록 했었습니다.
encoding 방식 설정 후 문서를 가져오기 위해 수정된 java source
보시면 알겠지만 빨간 글씨로 적힌 부분이 살짝 바꼈습니다.
저렇게 InputStreamReader로 encoding 방식을 적어주니 파싱이 잘 되더군욧+_+ㅎ
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();
}
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();
}
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 방식을 적어주니 파싱이 잘 되더군욧+_+ㅎ
'스터뒤ºㅁº' 카테고리의 다른 글
[snow leopard] leopart -> snow leopard 삽질기 ...; (0) | 2010.01.14 |
---|---|
[SiteMesh] layout Framework!! (0) | 2010.01.03 |
이클립스 갈릴레오 잠깐 사용해봐도 좋습니다 +_+ (4) | 2009.06.25 |
Eclipse galileo release!! (0) | 2009.06.25 |
eclipse 자동완성이 이상할때;; (0) | 2009.04.28 |