• 締切済み

ファイル出力時の

以下のソースでファイル出力するのですが、 BufferedReader br = new BufferedReader(new FileReader(new File(args[0]))); PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter(args[1]))); //一行読み込みを行った文字列を格納 String line; //一行読み込み while((line = br.readLine()) != null){ //一行書き込み pw.write(line); System.out.println(line); } コンソールへの出力は正常に出力されるのですが、 ファイルへの出力は改行されずに一行で出力されてしまいます。 どうすればファイル出力も正常になるか教えてください。

みんなの回答

  • UKY
  • ベストアンサー率50% (604/1207)
回答No.2

pw.write(line); というのは line という文字列をただ単にプリントライターに出力するだけで、line のあとに自動的に改行を出力するわけではありません。 せっかくプリントライターを使っているのですから、println メソッドを使いましょう。 pw.println(line); ところで、コンソールへ出力を行う System.out.println(line); // System.out はプリントストリーム と、ファイルへ出力を行う pw.write(line); // pw はプリントライター を見比べると、自然に何が違うのかわかってくると思いますが……

  • ranx
  • ベストアンサー率24% (357/1463)
回答No.1

PrintWriterでしたらprintln()が使えると思いますが...。

参考URL:
http://java.sun.com/j2se/1.3/ja/docs/ja/api/java/io/PrintWriter.html#println(java.lang.String)

関連するQ&A