亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

我如何使用Java從e??xcel中檢索整數值

我如何使用Java從e??xcel中檢索整數值

夢里花落0921 2022-06-23 08:57:16
我的 Excel 文件有電話號碼和整數,如 0772354573 和 56674,但我的輸出就像 07723545E9 和 56674.0,相反,我需要我的輸出像在 Excel 中定義的那樣,如 0772354573 和 56674。下面是我從外部源下載的 Getcell 數據類。public String getCellData(String sheetName,String colName,int rowNum){    try{        if(rowNum <=0)            return "";        int index = workbook.getSheetIndex(sheetName);        int col_Num=-1;        if(index==-1)            return "";        sheet = workbook.getSheetAt(index);        row=sheet.getRow(0);        for(int i=0;i<row.getLastCellNum();i++){            //System.out.println(row.getCell(i).getStringCellValue().trim());            if(row.getCell(i).getStringCellValue().trim().equals(colName.trim()))                col_Num=i;        }        if(col_Num==-1)            return "";        sheet = workbook.getSheetAt(index);        row = sheet.getRow(rowNum-1);        if(row==null)            return "";        cell = row.getCell(col_Num);        if(cell==null)            return "";        //System.out.println(cell.getCellType());        if(cell.getCellType()==CellType.STRING)            return cell.getStringCellValue();        else if(cell.getCellType()==CellType.NUMERIC || cell.getCellType()==CellType.FORMULA ){            String cellText  = String.valueOf(cell.getNumericCellValue());            if (HSSFDateUtil.isCellDateFormatted(cell)) {                // format in form of M/D/YY                double d = cell.getNumericCellValue();                Calendar cal =Calendar.getInstance();                cal.setTime(HSSFDateUtil.getJavaDate(d));                cellText =                        (String.valueOf(cal.get(Calendar.YEAR))).substring(2);                cellText = cal.get(Calendar.DAY_OF_MONTH) + "/" +                        cal.get(Calendar.MONTH)+1 + "/" +                        cellText;                //System.out.println(cellText);            }
查看完整描述

2 回答

?
皈依舞

TA貢獻1851條經驗 獲得超3個贊

如果您存儲長整數值,則 excel 將壓縮并存儲它們,因此您將看到如下值:

http://img1.sycdn.imooc.com//62b3baa50001480205040232.jpg

如果您不想將值存儲為整數,或者如果您想按原樣存儲/檢索值,并且如果您不想更改代碼,那么您可以執行以下操作:

http://img1.sycdn.imooc.com//62b3baab00012a8d05480234.jpg

在上面的數字前附加一個'符號。例如,如果數字是118995099890796那么你這樣做'118995099890796。這意味著,它會將其視為字符串,您可以使用getStringCellValue()方法讀取該值。

我希望它有幫助...


查看完整回答
反對 回復 2022-06-23
?
隔江千里

TA貢獻1906條經驗 獲得超10個贊

艱難并不理想,但我建議在讀取單元格值之前將數字單元格轉換為字符串單元格。然后將 value 解析為 int 值;


if(cell.getCellType()==CellType.NUMERIC) {

 cell.setCellType(Cell.CELL_TYPE_STRING);

 String cellValue=cell.getStringCellValue();

 int numericValue=Integer.parseInt(cellValue);

}


查看完整回答
反對 回復 2022-06-23
  • 2 回答
  • 0 關注
  • 130 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號