POI(エクセル)の読み込みを実装してみた〜JavaExcel読み込み〜

備忘録のために残しておこう。
今日は読み込んでDTOにセットするまで!!

private static List<Dto> readCSV() {
	List<Dto> list = new ArrayList<Dto>();
	try {
		//ここまではBufferedReaderと同じ
		FileInputStream fis = new FileInputStream(new File(READ_FILE_PATH));
		//BufferedReaderのようにPOIFSFileSystemの引数にFileInputStreamオブジェクトを指定
		POIFSFileSystem fs = new POIFSFileSystem(fis);

		// 1.まずワークブックオブジェクトを取得
		HSSFWorkbook wb = new HSSFWorkbook(fs);

		// 2.ワークシートを取得。今回は先頭のシートのみを狙い撃ち
		HSSFSheet sheet = wb.getSheetAt(0);

		// 3.ワークシート内にある行の最後の行インデックス分ループ
		//インデックスは除去したいので初期値を1にする
		for (int i = 1; i <= sheet.getLastRowNum(); i++) {

			// 一列取得(readLineみたいな感じかな)
			HSSFRow row = sheet.getRow(i);

			Dto dto = new Dto();

			// dtoに値をセットしていく
			HSSFCell name = row.getCell(0);
			dto.setName(name.getStringCellValue());
			
			HSSFCell sign = row.getCell(1);
			dto.setSign(sign.getStringCellValue());
			
			System.out.println("#-----------------------------------------");
			System.out.println(dto.getSign());
			System.out.println(dto.getName());
			list.add(dto);
		}
		fis.close();
	} catch (Exception e) {
		e.printStackTrace();
	}
	return list;
}

仕事で使った。
忘れそうなので置いておこう。