Egloos | Log-in


SAX 방식으로 웹 리소스 파싱할때 2-BYTE 이슈 해결

    menuXmlSaxHandler = new MenuXmlSaxHandler();
    factory = SAXParserFactory.newInstance();
    URL url2 = new URL(url);


    HttpURLConnection httpConn = null;

    httpConn = (HttpURLConnection)url2.openConnection();
    HttpURLConnection.setFollowRedirects(true);
    httpConn.connect();

    BufferedReader reader = new BufferedReader(new InputStreamReader(httpConn.getInputStream()));

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

    sparser = factory.newSAXParser();

    sparser.parse(is,menuXmlSaxHandler);

    httpConn.disconnect();

로컬에서는 괜찮았는데
썬서버에 올리니까 SAX 파싱시 에러가 났다.
UTF-8로 저장되지 않아서 그런걸로 짐작.
그래서 httpurlconnection을 통해 웹 리소스 xml을 스트림으로 읽어와서
inputsource에 넣고 utf-8로 인코딩 한다음 sax parser에게 던져주니 해결    

by 행복하자 | 2009/07/30 15:20 | JAVA 향기 | 트랙백 | 덧글(0)

트랙백 주소 : http://hongsgo.egloos.com/tb/2815330
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]

:         :

:

비공개 덧글

◀ 이전 페이지          다음 페이지 ▶