ここから本文です

Java初心者です。 ファイル処理についての質問です。 以下のようなプログラム...

ste********さん

2012/2/2523:24:23

Java初心者です。

ファイル処理についての質問です。
以下のようなプログラムを組んだのですが、txtファイルの内容が行ごとに改行されませんでした。
どうしてか、わかる方ご教授ください。


Eclipseで書いてます。

// ソースリスト

import java.io.*;

public class MyEditor {
public static void main(String[] args) {
try {
FileWriter out = new FileWriter(args[0]);
BufferedReader in =
new BufferedReader(new InputStreamReader(System.in));

String data;

int i = 1;
System.out.println("データを入力してください(終了:0)");

while(!(data = in.readLine()).equals("0"))
out.write((data + "\n")); // "\n"が機能しません。なぜでしょうか。

System.out.println("終了します。");
out.close();
} catch(Exception e) {
System.out.println(e);
}
}

}

閲覧数:
198
回答数:
1
お礼:
50枚

違反報告

ベストアンサーに選ばれた回答

ref********さん

2012/2/2601:36:38

どんな環境で動かしているのかわかりませんが、¥n を改行コードとして認識していないのではないでしょうか。

¥n でだめなら ¥r¥n(いわゆる CR+LF です。Windows とか。 ¥n なら普通は Unix 系 OS のはず)

ですが、Java は一度書いたらどこでも動くのが大前提なので、正しくは System#getProperty() メソッドに line.separator のキーを渡して動作する環境に適した改行コードを取得するのが常識です。

この回答は投票によってベストアンサーに選ばれました!

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる