javaのファイルに改行を書き込むときのほんのちょっとした違いについて
スポンサーリンク
PrintWriter
つかって指定ファイルに追記をしているのですが,最後の改行をどうするかで微妙に変な文字が入ったりします.
PrintWriter pw = new PrintWriter(new BufferedWriter( new OutputStreamWriter(new FileOutputStream(path, true), "UTF-8")));
上のように定義して,改行を書き込んでみます.
- こうすると,Emacsで開いた時
^M
という文字がはいってしまいました.
pw.println();
- この書き方なら,なんの問題もありませんでした.
pw.print("\n");
あと,どうもUTF-8で保存できてないっぽい.OutputStreamで指定するのだと思っていたが,なぜ?