1

如果我在 xls 表中使用公式,我在使用 JXL api 获取单元格内容时遇到问题。现在我在每个单元格中使用公式 - IF($L10="","",+ROUND($L10*1.375,3)) 但是当单元格值为空白时,我在调用 cell.getContents 时会收到垃圾字符() 方法,代码片段如下 - >>

Workbook = Workbook.getWorkbook(p_sourceFile);

excelsheet = workbook.getSheet(0);
for (int row = 1; row < noOfRows; row++) 
{ 
   cell = excelsheet.getCell(col, row);
   content = cell.getContents();

   System.out.println("content-" + content); //Is giving me junk character ? when the cell value is blank.

   ...

如果有人可以帮助我,那将是一个很大的帮助!

问候, 阿米特

4

1 回答 1

0

尝试这个:

NumberFormulaCell cell = (NumberFormulaCell) excelsheet.getCell(col, row);
content = cell.getValue();

来自 Cell.getContents() 的 JavaDocs:

快速而肮脏的函数将此单元格的内容作为字符串返回。对于更复杂的内容操作,需要将此接口强制转换为正确的子接口

数值公式的必要子接口是 NumberFormulaCell。如果要将公式作为字符串获取,请调用 cell.getFormula()。

我不确定我是否真的在这里回答你的问题。如果我不是,你能把这些打印出来的垃圾字符贴出来吗?

于 2009-11-10T12:36:59.210 回答