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);
}
}
実行結果
名前 : 山田太郎
性別 : 男