2011-08-19 24 views
2

我有一個應用程序可以將html轉換爲使用java的excel電子表格。有些字符在Excel中不能正確顯示。更可能是一個編碼問題。我需要一種將java中的字符串轉換爲unicode(UTF-16)的方式,以便它們可以通過excel正確顯示。Java和Unicode

+3

你是如何寫的數據用Excel使用*出* Java程序的? – seh

回答

2

它看起來像String.getBytes(Charset charset)是您正在尋找的方法。它允許您使用給定的編碼將字符串轉換爲字節數組。 (相對於String.getBytes()它使用的默認編碼)

你的代碼可能是這樣的:

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

詳情參見Javadocs

3

假設你有你的Java應用程序的內容,您需要確保您使用正確的編碼編寫文件。

要指定一個特定的編碼,你必須創建一個OutputStreamWriter:

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