Excelはやっぱり便利だよねぇ。
Apache POIを使って、Excelファイルを作成するサンプル
都道府県コードと名前の5件を、エクセルファイルに書き込みます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | import java.io.FileOutputStream; import java.io.IOException; import java.util.ArrayList; import java.util.List; 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.xssf.usermodel.XSSFWorkbook; public class ExelFileWriterTest { public static void main(String[] args) { //データ準備 List<Pref> prefList = new ArrayList<Pref>(); prefList.add(new Pref("01","北海道")); prefList.add(new Pref("02","青森県")); prefList.add(new Pref("03","岩手県")); prefList.add(new Pref("04","宮城県")); prefList.add(new Pref("05","秋田県")); //ワークブック作成 try (Workbook workbook = new XSSFWorkbook()) { //シート作成 Sheet sheet = workbook.createSheet("しーと1"); //セルにデータ書き込み for (int i=0 ; i<prefList.size() ; i++) { Pref pref = prefList.get(i); Row row = sheet.createRow(i); row.createCell(0).setCellValue(pref.code); row.createCell(1).setCellValue(pref.name); } //ファイル出力 try (FileOutputStream outputStream = new FileOutputStream("c:\\work\\test.xlsx")) { workbook.write(outputStream); } } catch (IOException e) { e.printStackTrace(); } } } class Pref{ public String code = null; public String name = null; public Pref(String code, String name) { this.code = code; this.name = name; } } |
実行結果
Excelファイルが作成されます。
サンプルの解説
前回はExcelファイルの読み込みでしたが、今回は書き込みです。
ワークブック(Workbook)を作成。シート(Sheet)を作成。行(Row)を作成。セル(Cell)を作成。
あとは出力するファイルを指定してワークブックで書き込むとExcelファイルが出来上がります。
※このコードを使用するには、別途Apache POIの入手が必要です。
入手方法などは前回の記事に書いてありますので、こちらからどうぞ。