您好,登錄后才能下訂單哦!
本篇內容介紹了“Java如何用poi讀取Excel”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
用戶可以直接讀取本地文件,也可以通過上傳文件的形式讀取excel
注意:poi對于讀取到空白行的時候,會默認的認為是最后一行,將不會再讀取空白行下面的數據
<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>4.1.2</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>4.1.2</version> </dependency>
創建ReloadExcelTest .java文件
此時找到excel的文件路徑,寫文件全名:路徑+文件全名
例:String reloadPath=“D:\ExcelTest\test.xlsx”;
windows路徑之間加\\
測試
package tech.niua.admin.outputvalue.util.reloadexcel; import org.apache.poi.ss.usermodel.*; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import tech.niua.admin.outputvalue.domain.OutputValue; import java.io.IOException; public class ReloadExcelTest { public static void readExcel(String reloadPath) throws IOException { //1.獲取工作簿 XSSFWorkbook workbook = new XSSFWorkbook(reloadPath); //2.獲取工作表 XSSFSheet sheet = workbook.getSheetAt(0); //獲取行 //cell.setCellType(Cell.CELL_TYPE_STRING); //將不同類型的數據類型轉為String int lastRowNum = sheet.getLastRowNum(); for (int i = 1; i <= lastRowNum; i++) { OutputValue outputValueEntity = OutputValue.builder().build(); Row rowValue = sheet.getRow(i); //獲取每一行中每一個單元格的數據的數據 for (int j = 0; j < 4; j++) { DataFormatter formatter = new DataFormatter(); String value = formatter.formatCellValue(rowValue.getCell(j)); System.out.print(value+" "); } System.out.println(); } } }
注意:4.1.2版本的poi已經不在使用cell.setCellType(Cell.CELL_TYPE_STRING);這種對于讀取到數據設置為String類型的這種形式,將不再支持
改用為:
DataFormatter formatter = new DataFormatter();
String value = formatter.formatCellValue(rowValue.getCell(j));
此時value就是我們讀取到的值,可以做一個相應的轉換存儲到集合或者對象的形式接收
測試
public static void main(String[] args) throws IOException { String reloadPath="D:\\ExcelTest\\test.xlsx"; ReloadExcelTest.readExcel(reloadPath); }
我們可以用集合的形式接收,或者以集合對象的形式接收,這樣就能夠對于讀取到的數據做一個操作處理,以便于后面實現批量上傳功能。
----->批量上傳:前端頁面上傳excel文件,由系統自動導入excel的數據到數據庫
“Java如何用poi讀取Excel”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。