2017-05-11 15 views
0

Javaを使用して一連の行をテキストファイルに書き込もうとしています。Javaを使用してテキストファイルに出力を書き込む

コード:

File file = new File("file.txt"); 
FileWriter writer = new FileWriter(file,true); 
for (first for loop) { 
      for (second for loop) { 
       if (condition TRUE){ 
        writer.write(element1 + element2.toString()+"\n"); 
       } 
       else { 
       writer.write("-"+ element1 + element2.toString()+"\n"); 
       } 
      } 
     } 

がエラー:

のみ空のファイルが作成されつつあります。

FileWriter writer = new FileWriter(file,true); 

BufferedWriter writer = new BufferedWriter(new FileWriter(file,true)); 

と最後に:、任意の提案は、これを交換し

+1

実際のコードを教えていただけますか? 'FileWriter'を使うのは問題ありませんが、あなたはそれを閉じる必要があります。与えられた答えがそれを解決したあなたの時間のために@ 012nbbender @ tnbbender – jiveturkey

+0

。 –

+0

[ファイルを作成してJavaで書き込むにはどうすればよいですか?](http://stackoverflow.com/questions/2885173/how-do-i-create-a-file-and-write-to- it-in-java) – Thierry

答えて

0

役立つだろうしてください。ここ

writer.close(); 
-1

は、コードは次のようになります方法です適用可能な場合は、ロジックを代用することができます。

import java.io.File; 
import java.io.FileWriter; 
import java.io.IOException; 

public class WriteAFile { 

    public static void main(String [] args) { 
     String element1="First Element"; 
     Integer element2=10; 
     FileWriter writer = null; 

     try { 
      writer = new FileWriter(new File("file.txt"), true); 

      for (int i=0; i<5; i++) { 
       for (int j=0; j<5; j++) { 
        if (true){ //Write the condition here 
         writer.write(element1 + element2.toString()+"\n"); 
        } 
        else { 
         writer.write("-"+ element1 + element2.toString()+"\n"); 
        } 
       } 
      } 
      writer.close(); 
     } 
     catch (IOException ioe) { 
      ioe.printStackTrace(); 
     } 
    } 
} 
0

提供したスニペットには何も問題はありません。問題は、forループ内のconditionsifステートメントが決して満たされないことがあります。したがってコードは決して得られません

writer.write(element1 + element2.toString()+"\n");

実際のコードを入力しない限り、これを手伝うことができます。

また、file.txtが存在することを確認する必要があります。 Windows環境でC:\\Users\\YOUNG MILLIE\\Documents\\file.txtのような絶対パスを使用すると良いでしょう。

私はこの例で試したのでうまくいきます。

 File file = new File("C:\\Users\\YOUNG MILLIE\\Documents\\file.txt"); 
     FileWriter writer = new FileWriter(file,true); 
     for (int i = 0; i <= 100;i++) { 
      for (int k = 0; k <= 50;k++) { 
       if (i <=50){ 
        writer.write(k +"\n"); 
       } 
       else { 
        writer.write("-"+ k +"\n"); 
       } 
      } 
     } 
     writer.close(); 
関連する問題