2011-08-19 6 views
2

Java를 사용하여 HTML을 Excel 스프레드 시트로 변환하는 앱이 있습니다. Excel에서 올바르게 렌더링되지 않는 문자가 있습니다. 인코딩 문제보다 가능성이 높습니다. 자바에서 문자열을 유니 코드 (UTF-16)로 변환하여 올바르게 변환 할 수있는 방법이 필요합니다.Java 및 유니 코드

+3

어떻게 데이터를 작성하는 엑셀 사용하기 위해 자바 프로그램의 * 알아 * :

가 특정 인코딩을 지정하려면하는 OutputStreamWriter를 만들어야합니다? – seh

답변

2

당신이 찾고있는 방법은 String.getBytes(Charset charset)입니다. 그것은 주어진 인코딩으로 바이트 배열로 문자열을 변환 할 수 있습니다.

코드는 다음과 같이 될 수있다 (String.getBytes() 반대로 기본 인코딩을 사용하는) : 자세한 내용은

byte[] myOutput = myString.getBytes(CharsetProvider.charsetForName("UTF-16")); 

Javadocs

3

당신이 당신의 자바 응용 프로그램의 콘텐츠를 가지고 가정 참조 올바른 인코딩으로 파일을 작성해야합니다.

Writer out = new BufferedWriter(
       new OutputStreamWriter(
        new FileOutputStream(file), "UTF-16"));