2013-01-16 103 views
0

有很多主題如何讀取XLSX文件並寫入文件,它們適用於我,但不適用於希臘語(只是示例)的文字。 Excel看起來像這樣:Apache POI使用希臘語讀取excel xlsx

srcid city county 
00008 ΠΑΤΡΑ ΑΧΑΪΑΣ 
00008 ΠΑΛΛΗΝΗ ΑΤΤΙΚΗΣ 
00008 ΠΑΤΡΑ ΑΧΑΪΑΣ 

當我讀到這個,我得到了嗎?哪裏是城市和縣。 我試過不同的例子:ToCSVXLSX2CSV

charset有問題,但我不知道是什麼。 我更新了UTF-8編碼的例子,但沒有運氣。

我使用的這個相關性: org.apache.poi POI 3.9

<dependency> 
    <groupId>org.apache.poi</groupId> 
    <artifactId>poi-ooxml</artifactId> 
    <version>3.9</version> 
</dependency> 

<dependency> 
    <groupId>org.apache.poi</groupId> 
    <artifactId>ooxml-schemas</artifactId> 
    <version>1.1</version> 
</dependency> 

<dependency> 
    <groupId>org.apache.xmlbeans</groupId> 
    <artifactId>xmlbeans</artifactId> 
    <version>2.5.0</version> 
</dependency> 
<dependency> 
    <groupId>org.apache.poi</groupId> 
    <artifactId>openxml4j</artifactId> 
    <version>1.0-beta</version> 
</dependency> 
<dependency> 
    <groupId>dom4j</groupId> 
    <artifactId>dom4j</artifactId> 
    <version>1.6.1</version> 
</dependency> 

請幫助。我找不出什麼是錯的。也許這個系統編碼的東西?

回答

2

ToCSV.saveCSVFile使用FileWriter,它使用默認的平臺編碼。相反,這樣做:

bw = new BufferedWriter(
     new FileOutputStreamWriter(new FileOutputStream(file), "UTF-8")); 

(然後,它始終是UTF-8)。

+0

感謝@Joop_Eggen快速的答案。這工作。我現在感到非常愚蠢。再次感謝。 – Darka

相關問題