在Java程序開發(fā)中,我們常常需要導(dǎo)入試題和選項(xiàng)的數(shù)據(jù),這時(shí)候使用Excel文件是比較常見的一種方式。在Java中,我們可以使用POI庫來讀取和寫入Excel文件。
FileInputStream inputStream = new FileInputStream("test.xlsx"); Workbook workbook = new XSSFWorkbook(inputStream); // 創(chuàng)建Excel文件對(duì)象 Sheet sheet = workbook.getSheetAt(0); // 獲取第一個(gè)sheet // 遍歷每一行和每一列,獲取單元格內(nèi)容并存儲(chǔ) for (Row row : sheet) { for (Cell cell : row) { String value = cell.getStringCellValue(); // 獲取單元格內(nèi)容(String類型) System.out.print(value + "\t"); } System.out.println(); } workbook.close(); // 關(guān)閉文件流
上述代碼可以讀取名為test.xlsx的Excel文件的第一個(gè)sheet,并將每個(gè)單元格的字符串內(nèi)容打印到控制臺(tái)上。注意,這里使用了try-catch語句來處理文件流和workbook對(duì)象的異常。
如果我們需要將Java中的數(shù)據(jù)寫入Excel文件中,可以使用類似下面的代碼:
FileOutputStream outputStream = new FileOutputStream("test.xlsx"); Workbook workbook = new XSSFWorkbook(); // 創(chuàng)建Excel文件對(duì)象 Sheet sheet = workbook.createSheet(); // 創(chuàng)建sheet // 寫入數(shù)據(jù) for (int i = 0; i< dataList.size(); i++) { Row row = sheet.createRow(i); // 創(chuàng)建行 for (int j = 0; j< data.length; j++) { Cell cell = row.createCell(j); // 創(chuàng)建單元格 cell.setCellValue(data[i][j]); // 寫入數(shù)據(jù) } } workbook.write(outputStream); // 將數(shù)據(jù)寫入到Excel文件中 workbook.close(); // 關(guān)閉文件流
上述代碼可以將名為test.xlsx的Excel文件創(chuàng)建出來,并將數(shù)據(jù)逐行逐列寫入到文件中。注意,這里使用了dataList和data兩個(gè)變量,dataList表示需要寫入到Excel文件中的數(shù)據(jù)列表。data數(shù)組表示列表中每個(gè)元素對(duì)應(yīng)的行數(shù)據(jù)。