5

war ファイルを介して Tomcat にデプロイされる Jersey Restful サービスを作成しています。

サービスは、3 つのテキスト ファイルのデータを読み取る必要があります。テキスト ファイルは、ファイル システムに存在するか、クラスパスから読み取る必要があります。ファイル システムとクラスパスからデータを読み取ろうとしましたが、どちらも機能していません。私はどちらの方法でも満足します - それは問題ではありません。

次のコードを使用する場合、コードがファイルを取得できるように、指定されたテキスト ファイルをどこに置くか教えてもらえますか?

BufferedReader br = new BufferedReader(new InputStreamReader
(this.getClass().getClassLoader().getResourceAsStream("myfile.txt")));

null ポインター例外が発生しています。

ファイル システムからファイルを読み取る場合は、次のコードを使用します。Jar のどこにファイルを配置すればよいですか?

FileInputStream fs = new FileInputStream("myFile.txt");
DataInputStream is = new DataInputStream(fs);
BufferedReader br = new BufferedReader(new InputStreamReader(is));

FileNotFound 例外が発生しています。

どんな提案でも大歓迎です。

4

2 に答える 2

4

WEB-INF/classesテキストファイルをフォルダーにコピーして使用this.getClass().getClassLoader().getResourceAsStream("/myfile.txt")したところ、機能しました。

皆さんありがとう。

于 2012-06-12T21:34:08.543 に答える
1

Java Web アプリケーション内のファイルの Java-Relative path にも同様のスレッドがあります。

ディレクトリをリアルタイムで知りたい場合は、クラスのServletContextメソッドにアクセスできます。getContextPathその方法があなたに役立つかもしれないと私は信じています。

于 2012-06-11T12:32:15.453 に答える