Javaのは、Apache POIの解析とExcelを生成を使用しています

この記事では、簡単にどのようにApache POIの生存キットを説明し、Excelスプレッドシートを解析します。

ApacheのPOIライブラリの基本的な定義

  1. HSSF`マイクロソフトExcel 2003のファイルに関連付けられた命令の前に付けたクラス名の前に。
  2. XSSF`クラス名の接頭辞の前で操作は、Microsoft Excel 2007のファイルのバージョン以上に関連していることを示します。
  3. XSSFWorkbook`そして、HSSFWorkbookExcelワークブックとしてクラス行為であります
  4. HSSFSheet`そして、XSSFSheetExcelワークシートとしてクラス行為であります
  5. RowカスタムExcelの行
  6. CellExcelのセルは、基準線を定義します。

pom.xml

1 
2
3
4
5
< 依存性 > < のgroupId > org.apache.poi </ のgroupId > < たartifactId > POI-OOXML </ たartifactId > < バージョン > 3.15 </ バージョン > </ 依存 >




例デモ

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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
パッケージ site.sixteen.demoutils。

輸入 org.apache.poi.ss.usermodel *。;
輸入 org.apache.poi.xssf.usermodel.XSSFSheet。
輸入 org.apache.poi.xssf.usermodel.XSSFWorkbook;

輸入 java.io. *;
インポートするjava.util.Iterator;

パブリック クラス {


パブリック 静的 ボイド writeToExcel (オブジェクト[] []データ、文字ファイル名は) スロー IOExceptionが {
XSSFWorkbookブック=新しい XSSFWorkbook()。
XSSFSheetシート= workbook.createSheet( "A班")。INTたrowNum = 0 ; ため([]リストオブジェクト:データ){ 行row = sheet.createRow(たrowNum ++)。int型 colNum引数= 0 ; (Object値:リスト){ セルCELL = row.createCell(colNum引数++)。もし(値のinstanceof文字列){







cell.setCellValue((文字列)値)。
} そう であれば(値instanceofの整数){
cell.setCellValue((整数)値);
} そう であれば(値のinstanceofブール){
cell.setCellValue((ブール)値)。
} {
cell.setCellValue(String.valueOf(値))。
}
}
}

試す(たFileOutputStreamのOutputStream = 新しいたFileOutputStream(filename)で){
workbook.write(のOutputStream)。
}
}

公共の 静的な 無効 readExcel (ファイルのファイル)が スローにIOException {
FileInputStreamのexcelFile =新しい FileInputStreamを(ファイル);
ワークブックのワークブック=新しい XSSFWorkbook(excelFile)。
シートのシート= workbook.getSheetAt( 0)。
反復子の<row> rowIterator = sheet.rowIterator()。一方、(rowIterator.hasNext()){ 行row = rowIterator.next()。 反復子<細胞> cellIterator = row.cellIterator()。一方、(cellIterator.hasNext()){ セルCELL = cellIterator.next()。もし





(cell.getCellTypeEnum()== CellType.STRING){
System.out.print(cell.getStringCellValue()+ "T" )。
} そう であれば(cell.getCellTypeEnum()== CellType.NUMERIC){
System.out.print(cell.getNumericCellValue()+ "T" )。
} そう であれば(cell.getCellTypeEnum()== CellType.BOOLEAN){
System.out.print(cell.getBooleanCellValue()+ "T" )。
} {
System.out.print(cell.getStringCellValue()+ "T" )。


System.out.println();
}
}

パブリック 静的 ボイド メイン(文字列[]引数) {
オブジェクト[] [] DATAS = {
{ "编号" "名字" "年龄" "性别" }、
{ "001" "トム" 18 } 、
{ "002" "ジャック" 10 }、
{ "003" "10月" 24 }
{ "004""リル"21 }
}。
文字列filename = "/tmp/demo-write.xlsx" 試す { writeToExcel(DATASファイル名)。 } キャッチ(IOExceptionを電子){ e.printStackTrace(); } 試みる { readExcel(新しいファイル(filename))。 } キャッチ(IOExceptionを電子){ e.printStackTrace(); } }












}

結果:

Excelで生成されました/tmp/demo-write.xlsx

分析結果:

1 
2
3
4
5
6
7
番号名前年齢性別	 
001トムtrueに18.0
002 10.0ジャックtrueに
trueに003 10月24.0
004偽リル21.0

プロセス終了コード0で終了

オリジナル:ビッグボックス  のJavaは、Apache POIの解析を使用してExcelを生成します


おすすめ

転載: www.cnblogs.com/chinatrump/p/11588834.html