質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.51%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

解決済

4回答

28864閲覧

Java FileNotFoundExceptionについて

javabigineer

総合スコア87

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2016/07/11 06:29

編集2016/07/11 06:42

Java言語でExcelファイルを読み込む際に、対象ファイルの格納先パスを指定したところ
パス、ファイル名ともに正しいにも関わらずFileNotFoundExceptionの例外が発生しました。

ファイルがあるにもかかわらず、FileNotFoundExceptionが発生することはあるのでしょうか?
ある場合、何が原因として考えられるのでしょうか?

ご存知の方いらっしゃいましたら、ご教授ください。
お願いいたします。

public Workbook excelRead(String excelPath) { FileInputStream is =null; Workbook wb = null; try { is = new FileInputStream(excelPath); wb =WorkbookFactory.create(is); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (EncryptedDocumentException e) { e.printStackTrace(); } catch (InvalidFormatException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); }finally{ try { is.close(); } catch (IOException e) { e.printStackTrace(); } } return wb; } java.io.FileNotFoundException: "C:\aaa\bbb\test.xls" (ファイル名、ディレクトリ名、またはボリューム ラベルの構文が間違っています。) at java.io.FileInputStream.open0(Native Method) at java.io.FileInputStream.open(FileInputStream.java:195) at java.io.FileInputStream.<init>(FileInputStream.java:138) at java.io.FileInputStream.<init>(FileInputStream.java:93) at knowledge.ExcelOpe.excelRead(ExcelOpe.java:34) at PCkanriweekly.WeeklyCheck.main(WeeklyCheck.java:84) Exception in thread "main" java.lang.NullPointerException at knowledge.ExcelOpe.excelRead(ExcelOpe.java:47) at PCkanriweekly.WeeklyCheck.main(WeeklyCheck.java:84)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

moonphase

2016/07/11 06:36

ソースファイルをエラー内容を貼り付けてください。
coco_bauer

2016/07/11 06:41

Excelファイルを読み込む前に、パスとファイルを画面に表示してみてください。どこかにタイプミスなどがあるのだと思いますよ。
guest

回答4

0

自己解決

設定ファイルからパスを取得していたのですが、設定ファイル(properties)で""(ダブルクォーテーション)を前後に記述していたことが原因のようでした。ご回答いただいた皆様ありがとうございました。

投稿2016/07/11 07:41

javabigineer

総合スコア87

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ファイルがあるにもかかわらず、FileNotFoundExceptionが発生することはあるのでしょうか?

ある場合、何が原因として考えられるのでしょうか?

・コードが間違っている
・ファイルが存在しないのにあると思っている「思い込み」
・OS環境の動作の違いを把握していないことによる知識不足。(ディレクトリセパレータや文字コードの違いとか)

投稿2016/07/11 06:42

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

C:\aaa\bbb\test.xls

ではなく

C:/aaa/bbb/test.xls

にしてみてはいかがですか?

投稿2016/07/11 07:16

moonphase

総合スコア6621

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

パス名の区切り記号、 \ としていませんか。\ としないとエスケープシーケンスになってしまいます。

投稿2016/07/11 06:50

yuba

総合スコア5568

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.51%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問