Wie zu analysieren UTF-8-Zeichen in Excel-Dateien mit POI

Ich habe mit OVI zu analysieren, XLS-und XLSX-Dateien erfolgreich. Allerdings bin ich nicht in der Lage korrekt zu extrahieren, spezielle Zeichen wie UTF-8-codierte Zeichen wie Chinesisch oder Japanisch, aus einer Excel-Tabelle. Ich habe herausgefunden, wie man Daten extrahieren aus einer UTF-8-kodierten csv-oder tab-getrennte Datei, aber kein Glück mit der Excel-Datei. Kann mir jemand helfen?

(Edit: Code-snippet aus Kommentare)

HSSFSheet sheet = workbook.getSheet(worksheet); 
HSSFEvaluationWorkbook ewb = HSSFEvaluationWorkbook.create(workbook); 
while (rowCtr <= lastRow && !rowBreakOut) 
{ 
    Row row = sheet.getRow(rowCtr);//rows.next(); 
    for (int col=firstCell; col<lastCell && !breakOut; col++) { 
      Cell cell; 
      cell = row.getCell(col,Row.RETURN_BLANK_AS_NULL); 
      if (ctype == Cell.CELL_TYPE_STRING) { 
         sValue = cell.getStringCellValue(); 
         log.warn("String value = "+sValue); 
         String encoded = URLEncoder.encode(sValue, "UTF-8"); 
         log.warn("URL-encoded with UTF-8: " + encoded); 
         ....
  • Können Sie auf die Teile der POI API, die Sie verwenden, oder zeigen Sie uns etwas code? Das würde uns helfen um API-änderungen und oder Diagnostika, die helfen würde, zu Debuggen.
  • Excel speichert keine Zeichen wie UTF-8, so dass ich denke, du bist wahrscheinlich verwirrt, irgendwo...
  • Screenshot der Excel-Datei:
  • Hier ist ein code-snippet:HSSFSheet sheet = workbook.getSheet(worksheet); HSSFEvaluationWorkbook ewb = HSSFEvaluationWorkbook.create(workbook); while (rowCtr <= lastRow && !rowBreakOut) { Row row = sheet.getRow(rowCtr);//rows.next(); for (int col=firstCell; col<lastCell && !breakOut; col++) { Cell cell; cell = row.getCell(col,Row.RETURN_BLANK_AS_NULL); if (ctype == Cell.CELL_TYPE_STRING) { sValue = cell.getStringCellValue(); log.warn("String value = "+sValue); String encoded = URLEncoder.encode(sValue, "UTF-8"); log.warn("URL-encoded with UTF-8: " + encoded);
  • alle log-Einträge zurückzukehren, junk-E -, - ie - nicht-chinesische Zeichen
  • Ich konnte nicht herausfinden, wie Hänge ich einen Screenshot oder excel-Datei mit chinesischen Zeichen gespeichert, in eine Excel-Datei, so dass Sie nur gehen zu müssen, nehmen Sie mein Wort, dass es möglich ist, zu speichern, chinesische Zeichen in eine excel-Datei.
  • Herzlich willkommen auf stackoverflow 🙂 Es ist ein wenig schwer zu Lesen, dass viel code in den Kommentaren, so zog ich den code-snippet in die Frage, für bessere Lesbarkeit. FYI: Sie können immer aktualisieren Sie Ihre eigenen Fragen, um mehr Informationen. Ich denke, die option ist verfügbar für alle Benutzer Ebenen.

InformationsquelleAutor user1198370 | 2012-02-08
Schreibe einen Kommentar