国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

JAVA如何讀取Excel數(shù)據(jù)

瀏覽:130日期:2022-05-26 14:13:16

1.創(chuàng)建Maven項目在pom文件中添加依賴

<dependencies> <!-- 舊的 .xls --> <!--<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.17</version> </dependency>--> <!-- 新的 .xlsx --> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>3.17</version> </dependency> </dependencies>

2.編寫代碼

import org.apache.poi.ss.usermodel.*;import org.apache.poi.xssf.usermodel.XSSFWorkbook;import java.io.FileInputStream;import java.io.IOException;public class PoiTest { public static void main(String[] args) throws IOException { FileInputStream is = new FileInputStream('src/main/resources/test.xlsx'); XSSFWorkbook workbook = new XSSFWorkbook(is); //讀取Sheet Sheet sheet = workbook.getSheetAt(0); Row row = sheet.getRow(0); //獲取最大行數(shù) int rownum = sheet.getPhysicalNumberOfRows(); //獲取最大列數(shù) int colnum = row.getPhysicalNumberOfCells(); for (int i = 0; i < rownum; i++) { //獲取第i行數(shù)據(jù) row = sheet.getRow(i); for (int j = 0; j < colnum; j++) {Cell cell = row.getCell(j);cell.setCellType(CellType.STRING);String cellText = cell.getStringCellValue();System.out.print(cellText + 't'); } System.out.println(); } }}

3.報錯

3.1 異常解決Cannot get a STRING value from a NUMERIC cell poi

poi導(dǎo)入excel表格數(shù)據(jù)時報java.lang.IllegalStateException: Cannot get a STRING value from a NUMERIC cell異常是因為在讀取cell單元格字符串時,有number類型的數(shù)據(jù),因此需要把它轉(zhuǎn)化為純String類型,這樣就不會報錯了。報錯的地方類似于這樣。

//獲取單元格XSSFCell cell = row.getCell(0);//獲取單元格數(shù)據(jù)String cellValue = cell.getStringCellValue();

在number類型轉(zhuǎn)化為String類型的過程中造成了Cannot get a STRING value from a NUMERIC cell這樣的問題,因此需要在讀取excel單元格數(shù)據(jù)轉(zhuǎn)化之前設(shè)置單元格類型為String,代碼如下。

//獲取單元格XSSFCell cell = row.getCell(0);//設(shè)置單元格類型cell.setCellType(CellType.STRING);//獲取單元格數(shù)據(jù)String cellValue = cell.getStringCellValue();

3.2 poi導(dǎo)出Excel報錯java.lang.NoClassDefFoundError: org/openxmlformats/schemas/spreadsheetml/x2006/main/CTWorkbook$Factoryat

Exception in thread 'main' java.lang.NoClassDefFoundError: org/openxmlformats/schemas/spreadsheetml/x2006/main/CTWorkbook$Factoryat org.apache.poi.xssf.usermodel.XSSFWorkbook.onWorkbookCreate(XSSFWorkbook.java:436)at org.apache.poi.xssf.usermodel.XSSFWorkbook.<init>(XSSFWorkbook.java:238)at org.apache.poi.xssf.usermodel.XSSFWorkbook.<init>(XSSFWorkbook.java:229)at exportexcel.BuildXLSX.main(BuildXLSX.java:35)Caused by: java.lang.ClassNotFoundException: org.openxmlformats.schemas.spreadsheetml.x2006.main.CTWorkbook$Factoryat java.net.URLClassLoader.findClass(Unknown Source)at java.lang.ClassLoader.loadClass(Unknown Source)at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)at java.lang.ClassLoader.loadClass(Unknown Source)... 4 more

錯誤原因:

未導(dǎo)入poi-ooxml-schema jar包。我使用的是poi-3.15 , 應(yīng)該是poi-ooxml-schemas-3.15.jar包

以上就是JAVA如何讀取Excel數(shù)據(jù)的詳細(xì)內(nèi)容,更多關(guān)于JAVA讀取Excel數(shù)據(jù)的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: excel
相關(guān)文章:
主站蜘蛛池模板: 亚洲精品久久玖玖玖玖 | 在线观看亚洲天堂 | 亚洲免费在线观看视频 | 精品一久久 | 欧美一级一极性活片免费观看 | 国内精品a| 亚洲天堂视频在线免费观看 | 欧美一区二区三区精品 | 日本视频在线免费看 | 国产精品黄在线观看免费软件 | 黄色在线播放 | 黄色一级片在线看 | 久久99精品视香蕉蕉 | 131的美女午夜爱爱爽爽视频 | 成人欧美一区二区三区黑人 | 碰碰人人| 成人网在线视频 | 日韩成人黄色片 | 艳女伦交一级毛片 | 国产情侣自拍网站 | 操操综合网 | 免费国产一级特黄久久 | 高清欧美一级在线观看 | 国产国产人免费视频成69堂 | 欧美日韩精品一区二区免费看 | 国产在线精品一区免费香蕉 | 国产成人经典三级在线观看 | 国产日韩欧美综合在线 | 中文字幕亚洲综合久久男男 | 日韩 国产 欧美视频一区二区三区 | 看全色黄大色黄大片女图片 | 欧美成人手机视频免费播放 | 亚洲三级在线视频 | 日本在线资源 | 黄色国产在线观看 | 扒开双腿猛进入爽爽在线观看 | 成人免费在线网站 | 大陆老太xxxxxxxxhd| 欧美国产日韩一区二区三区 | 欧美成人综合在线观看视频 | 国产爽的冒白浆的视频高清 |