ファイルに文字列を書き込むと、Javaはプロジェクトのルートディレクトリにファイルを書き込みます。
サブディレクトリに書き込みたい。例:project_root/my_subdir
。
絶対パスにファイルを書き込むことは可能ですか?私のプログラムが別のシステムで動作することができれば、はるかに良いでしょう。
ファイルに文字列を書き込むと、Javaはプロジェクトのルートディレクトリにファイルを書き込みます。
サブディレクトリに書き込みたい。例:project_root/my_subdir
。
絶対パスにファイルを書き込むことは可能ですか?私のプログラムが別のシステムで動作することができれば、はるかに良いでしょう。
ファイルを次のように定義できます
new File("project_root/my_subdir", newFileToCreate);
多分
new File("project_root" + File.separator + "my_subdir", newFileToCreate);
このOSを独立させるため
または、最初のパラメータとしてfiletoを使用できます
new File(new File("project_root" + File.separator + "my_subdir"), newFileToCreate);
私があなたの質問をよく理解しているなら、あなたは探しています:
File file = new File("./my_subdir/file.txt");
別のコンピューターに展開したときに機能するように、相対パスを使用してファイルを作成する方法を尋ねているようです。ユーザーのホームディレクトリSystem.getProperty("user.home")
または現在の作業ディレクトリを取得できますSystem.getProperty("user.dir")
。
たとえば、ユーザーのホームディレクトリにファイルを作成するには、次のようにします
new File(System.getProperty("user.home"), "myFile.txt")
。