Javaプロジェクトのsrcフォルダーに保存されているテキストファイルへの相対パス名を指定する方法を考えていました。このテキストファイルのパスを含む文字列を保存したいと思います。たとえば、Javaプロジェクトのsrcフォルダーにexample.txtがある場合、相対パスを見つけるにはどうすればよいですか?これをメインでも実行しているので、問題が発生しています。 .getResource()を使用しています。
私のファイルのパスは、Eclipse /MyProject/src/data.txtのプロパティから続きます
私はもう試した:
文字列パス= "/MyProject/src/data.txt";
しかし、それはうまくいきませんか?
Eclipseを使用している場合は、/src
および/bin
フォルダー以外のプロジェクトフォルダーのルートにテキストファイルを配置します。これで、相対パスを介して直接アクセスできるようになります。
Srcフォルダー内のファイルにアクセスする場合は、ファイルのパス/名前の前に/src/
プレフィックスを追加する必要があります
使用 src/
プレフィックスをファイルのパス/名前の前に付けます。
String path = "src/data.txt";
パスは、「Java」コマンドを実行するディレクトリからの相対パスです。
/opt/projects/myproject>$ Java -cp <whatever your classpath is that contains your class files> com.mycompany.mypackage.MyJavaClass
この場合、MyJavaClassはディレクトリに関連するファイルを検索します
/opt/projects/myproject
これを行う別の方法があります。クラスパスメカニズムを介して見つかるロードリソースを使用できます。
getClass().getResource("foo.txt");
詳細はこの投稿をご覧ください