2016-12-01 8 views
0

コマンドライン引数を入力しない場合でも、書き込みを行わないコマンドライン引数を入力するとファイルに書き込むことができます。たとえ私がコマンドライン引数を使っていなくても。コマンドライン引数を使用してファイルに書き込めません

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



public class Test { 

    public Test() throws IOException { 

     String content = "writing..."; 

     File file = new File("sample.txt"); 

     if (!file.exists()) { 
      file.createNewFile(); 
     } 

     FileWriter fw = new FileWriter(file.getAbsoluteFile()); 
     BufferedWriter bw = new BufferedWriter(fw); 
     bw.write(content); 
     bw.close(); 

     System.out.println("Done"); 

    } 
} 
+1

あなたは[MCVE]あなたの問題を示すために提供することはできますか? – Gendarme

+1

ストリームをフラッシュしますか? 'bw.flush()'また、例外をthrowするコンストラクタをtry {} catch {}に変更して、何が起きているかを確認します。 –

答えて

1

あなたはそうHDD|SSDRAMからデータをflushする必要があります。

try (FileWriter fw = new FileWriter(file.getAbsoluteFile()); BufferedWriter bw = new BufferedWriter(fw)) { 
     // Write the data to the memory 
     bw.write(content); 
     // You need to flush the data 
     bw.flush(); 
     // Close the BufferedWriter 
     bw.close(); 
} catch (Exception ex) { 
     Logger.getLogger(getClass().getName()).log(Level.SEVERE, "Failed to write the data on the file", ex); 
} 
+1

ああ、それはストリームを流していた、私は確信していなかったので私は投稿しなかったが、私はあなたがうれしいです。 –

+0

@ Ashwin Gupta;)。 。 。 – GOXR3PLUS

関連する問題