如何将excel中单元格的字符串值转换为数字进行各种计算?

时间:2016-04-20 06:35:30

标签: java jxl

Sheet sheet = w.getSheet(0);
data = new String[sheet.getColumns()][sheet.getRows()];
data1 = new String[sheet.getColumns()][sheet.getRows()];
for (int j = 0; j <sheet.getColumns(); j++) 
{
    for (int i = 0; i < sheet.getRows(); i++) 
    {
        Cell cell = sheet.getCell(j, i);
        data[j][i] = cell.getContents();

        System.out.println(data[j][i]);
        // System.out.println(cell.getContents());
    } System.out.println();
}

我需要找到数组data[j][i]的总和,但不能因为它是一个字符串。

1 个答案:

答案 0 :(得分:0)

JXL有一个名为bit.ly/18SuUzJ (without http) 的类,其NumberCell方法返回一个double。

请参阅文档here

因此,如果您将数据数组更改为double,则可以替换:

getValue()

使用:

Cell cell = sheet.getCell(j, i);
data[j][i] = cell.getContents();

然后你可以对它进行计算。

当然,如果您知道该值为整数,则可以相应地进行转换。

请注意,最好首先检查类型,例如:

NumberCell cell = (NumberCell)sheet.getCell(j, i);
data[j][i] = cell.getValue();

每当转换未知/未检查的输入时,用try / catch包装它。