質問編集履歴
1
未解決
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
java でExcelファイルの値を読み込み、別ファイルに書き込んで保存する
|
1
|
+
java でExcelファイルの値を読み込み、別ファイルに書き込んで保存する(2016.04.26更新)
|
body
CHANGED
@@ -1,7 +1,11 @@
|
|
1
|
+
(2016.04.26 更新)
|
1
2
|
こんにちは。
|
2
|
-
javaでExcelファイルの
|
3
3
|
|
4
|
+
回答をいただきましたが、別のエラーメッセージが表示されました。
|
5
|
+
発生した事象に変化はありません。
|
4
6
|
|
7
|
+
再度よろしくお願いいたします。
|
8
|
+
|
5
9
|
###前提・実現したいこと
|
6
10
|
・javaでExcelファイル("sample2.xlsx")から値を取得し、
|
7
11
|
その値を新規のExcelファイル("jresult.xlsx")に書き込み保存するシステムを作っています。
|
@@ -13,16 +17,17 @@
|
|
13
17
|
⇒結果ファイルを開くと、以下のメッセージが表示されファイルの中身が見られない。
|
14
18
|
「Excelファイル’○○○.xlsx’を開くことができません。ファイル形式またはファイル拡張子が正しくありません。 ファイルが破損しておらず、ファイル拡張子とファイル形式が一致していることを確認してください。」
|
15
19
|
|
16
|
-
###発生している問題・エラーメッセージ
|
20
|
+
###発生している問題・エラーメッセージ(2016.04.26更新)
|
17
21
|
|
18
22
|
```
|
19
|
-
Exception in thread "main" java.lang.
|
23
|
+
Exception in thread "main" java.lang.NullPointerException
|
20
|
-
at org.apache.poi.xssf.usermodel.XSSFWorkbook.validateSheetIndex(XSSFWorkbook.java:1382)
|
21
|
-
at org.apache.poi.xssf.usermodel.XSSFWorkbook.getSheetAt(XSSFWorkbook.java:1024)
|
22
|
-
at main.HelloWorld2.main(HelloWorld2.java:
|
24
|
+
at main.HelloWorld2.main(HelloWorld2.java:43)
|
23
25
|
```
|
26
|
+
エラーの発生したソースコード
|
27
|
+
「cell2.setCellValue(richStr);」
|
24
28
|
|
25
|
-
###該当のソースコード
|
29
|
+
###該当のソースコード(2016.04.26更新)
|
30
|
+
|
26
31
|
```
|
27
32
|
package main;
|
28
33
|
|
@@ -55,7 +60,8 @@
|
|
55
60
|
Dir.mkdir();//結果ファイル格納ディレクトリ作成
|
56
61
|
XSSFWorkbook outbook = new XSSFWorkbook();
|
57
62
|
FileOutputStream out = new FileOutputStream(Dir + "\\" + "jresult.xlsx");
|
58
|
-
XSSFSheet sheet2 = outbook.
|
63
|
+
XSSFSheet sheet2 = outbook.createSheetAt();
|
64
|
+
//XSSFSheet sheet2 = outbook.getSheetAt(0);
|
59
65
|
XSSFRow row2 = sheet2.getRow(2);
|
60
66
|
if (row2 == null){
|
61
67
|
row2 = sheet2.createRow(2);
|