0
請在下面找到代碼片段。該實現讀取Excel表格中特定列的單元格值。excel中的數值單元格值在小數點後附加額外數字時被異常讀取
諸如459000.00之類的數值正在被代碼讀取爲459000.00000000006。對於少數人來說,它工作得很好,但對一些人來說卻是失敗的。
try
{
String AmountColumn="C";
File FS = new File(FileLocation);
FileInputStream FileStream = new FileInputStream(FS);
XSSFWorkbook FileWorkbook = new XSSFWorkbook(FileStream);
Sheet FileWorksheet = FileWorkbook.getSheetAt(0);
double[] AmountArray = new double[FileWorksheet.getPhysicalNumberOfRows() - 1];
Iterator<Row> iterator2 = FileWorksheet.iterator();
int i2 = 0;
while (iterator2.hasNext())
{
if (i2 == 0)
{
iterator2.next();
}
else
{
AmountArray[i2 - 1] = iterator2.next().getCell(CellReference.convertColStringToIndex(AmountColumn)).getNumericCellValue();
System.out.println("Amount is: " + AmountArray[i2 - 1]);
}
i2++;
}
Amount = AmountArray;
}
catch (Exception e)
{
e.printStackTrace();
}