6

まず第一に、私は Stackoverflow の皆さんを愛しています! みんなとても助かります!悲しいことに、私が質問に答えようとすると、彼らは私にとってあまりにも進んでいます:'(

テキストファイルをフォルダーに保存したい - たとえば絶対フォルダーではなく、保存したい

{クラスの場所}/text/out.txt

プログラムは別のコンピューターで実行されているため、場所が変更されるため、C:// ect を配置できません。

また、疑い「\\」を使用する必要があることも知っていますが、これは私の試みでは機能しませんでした

public void writeFile (int ID, int n) {
            try{
                    String Number = Integer.toString(n);
                    String CID = Integer.toString(ID);
          FileWriter fstream = new FileWriter("//folder//out.txt",true); //this don't work 
          BufferedWriter out = new BufferedWriter(fstream);
          out.write(Number+"\t"+CID);
          out.newLine();
          out.close();
          }//catch statements etc
4

4 に答える 4

6

getAbsolutePath()関数を使用できます。

 FileWriter fstream = new FileWriter(new File(".").getAbsolutePath()+"//folder//out.txt",true);

そして私はあなたにこのスレッドを見てみることを勧めます

于 2012-01-30T00:14:16.293 に答える
0

コードのディレクトリに text という名前のフォルダーを作成することは、ファイル システムに依存しません。ファイルを作成するには、{project folder}/text/out.txtこれを試すことができます:

String savePath = System.getProperty("user.dir") + System.getProperty("file.separator") + text;
File saveLocation = new File(savePath);
    if(!saveLocation.exists()){
         saveLocation.mkdir();
         File myFile = new File(savePath, "out.txt");
         PrintWriter textFileWriter = new PrintWriter(new FileWriter(myFile));
         textFileWriter.write("Hello Java");
         textFileWriter.close();
     }

をキャッチすることを忘れないでくださいIOException

于 2015-02-20T01:55:55.943 に答える
-1

最初にディレクトリを作成し、次にファイルを作成する必要があります。最初にそれらの存在を確認することを忘れないでください:

new File("some.file").exists();
new File("folder").mkdir(); // creates a directory
new File("folder" + File.separator + "out.txt"); // creates a file

Fileリソースがすでに存在する場合は、オブジェクトを作成する必要はありません。

File.separatorスラッシュを使用したローカリゼーションの問題に対する答えです。

于 2012-01-30T00:31:00.803 に答える