2012-04-13 14 views
0
reader = new CSVReader(new FileReader("file.txt")); 

ファイルは、Javaクラスと同じディレクトリに置かれます。とにかく私はFileNotFoundExceptionを取得します。ファイルをクラスと同じディレクトリに読み込みますか?

どうしたのですか?

+0

新しいファイル( "。")で現在のディレクトリを取得できます。デバッグの目的でgetAbsolutPath()... – wrm

+0

以上System.getProperty( "user.dir") –

答えて

0

相対パスは現在の作業ディレクトリからの相対パスです。コードサンプルで、file.txtが現在のディレクトリにない場合、それは見つからないでしょう。

コード内で相対パスを使用しないように注意してください。これは、コードを実行するときに現在の作業ディレクトリをコンパイル時に伝えることが不可能なためです。

ファイルがデプロイメントの一部である場合は、クラスパスに格納してClassLoader.getResourceAsStream()でアクセスしてください。ユーザーが変更できる外部データの場合は、ファイル名を何らかの設定にしてください。

0

ファイルは、プロジェクトのルートフォルダに存在する必要があります。

0

あなたのアプリケーションは、そのディレクトリで実行されません。絶対パス(またはクラスパス相対パス)を使用するか、アプリケーションを実行するディレクトリにファイルを移動する必要があります。たとえばEclipseでは、これがプロジェクトのルートフォルダになります。

関連する問題