我一直在使用POI來成功解析XLS和XLSX文件。但是,我無法從Excel電子表格中正確提取特殊字符,如中文或日文等UTF-8編碼字符。我已經想出瞭如何從UTF-8編碼的csv或製表符分隔的文件中提取數據,但沒有運行Excel文件。誰能幫忙?如何使用POI解析Excel文件中的UTF-8字符
(編輯:從意見代碼片段)
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);
....
您可以指向您正在使用的POI API的各個部分,還是向我們展示一些代碼?這將有助於我們推薦可幫助調試的API更改和/或診斷。 – 2012-02-08 23:29:17
Excel不會將字符存儲爲UTF-8,所以我認爲您可能在某處感到困惑... – Gagravarr 2012-02-09 09:55:55
Excel文件的屏幕截圖: – user1198370 2012-02-09 16:41:16