Java11 Apache POIでエクセルの値を読み込む方法
環境
JavaSE 11
Eclipse 4.24.0
操作方法
1.Apache POIを取得します
Mavenプロジェクトでpom.xmlの<dependencies>の間に以下のコードを追加します。
<!-- https://mvnrepository.com/artifact/org.apache.poi/poi-ooxml --> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>4.1.2</version> </dependency>
2.Excelファイル名の準備
Excelファイル名
C:\arkgame\2023\memberinfo.xlsx
シート名
user
データ
山田太郎 男
書式
1.Excelファイルにアクセスする
Workbook 変数名1 = WorkbookFactory.create(new File(Excelファイル名));
2.シート名の取得
変数名2 = 変数名1.getSheet(“シート名")
3.指定行目を取得する
変数名3 = 変数名2.getRow(行目のインデックス)
4.セルの値を取得する
変数名3.getCell(セルのインデックス)
使用例
package com.arkgame.study; import java.io.File; import java.io.IOException; import org.apache.poi.EncryptedDocumentException; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.usermodel.WorkbookFactory; public class ExcelRead { public static void main(String[] args) throws EncryptedDocumentException, IOException { // 指定Excelファイルへアクセス Workbook excel = WorkbookFactory.create(new File("C:\\\\arkgame\\\\2023\\memberinfo.xlsx")); // シート名を取得 Sheet sheetName = excel.getSheet("user"); // 1行目を取得 Row row = sheetName.getRow(0); // 1番目のセルの値を取得 Cell cellName = row.getCell(0); // 2番目のセルの値を取得 Cell cellSex = row.getCell(1); // セルの値を文字列として取得 String resName = cellName.getStringCellValue(); String resSex = cellSex.getStringCellValue(); // 文字列を結果として表示 System.out.println("名前 : " + resName); System.out.println("性別 : " + resSex); } }
実行結果
名前 : 山田太郎
性別 : 男