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);

      }

}

実行結果
名前 : 山田太郎
性別 : 男

Java

Posted by arkgame