Chapter12「テキストファイルを保存する」(Lesson12-1)
テキストファイルに出力するプログラム。
ただし、以前、やさしいjava 6版 で習った方法より記入が簡素だ。
なぜだろう。
どうしてだろう。
ネットで 色々調べて確認。
どうやら、FileWriterのクラスと PrintWriterのクラスとの違いらしい。
⭐️Sample1201(FileWriter)
import java.io.*;
class Main{
public static void main(String[] args){
try{
FileWriter fw = new FileWriter("test.txt");
fw.write("文字列をテキストファイルに書き込みました。");
fw.write("追加");
fw.write("\n");
fw.write("1+2=" + (1+2));
fw.close();
}
catch(IOException e){
System.out.println(e);
}
}
}
↓出力されたテキストには。
『文字列をテキストファイルに書き込みました。追加』
『1+2=3』 と出力される。
⭐️Sample7(PrintWriter)
import java.io.*;
class Sample{
public static void main(String[] args){
try{
PrintWriter pw = new PrintWriter
(new BufferedWriter(new FileWriter("test1.txt")));
pw.println("文字列をテキストファイルに書き込みました。");
pw.println("追加。");
pw.println("");
pw.print("文字列を〜");
pw.println("追加。");
pw.print("文字列を" + "\n");
pw.print("\t" + "追加。");
pw.println("1+2=" + (1+2));
pw.close();
}
catch(IOException e){
System.out.println(e);
}
}
}
↓出力されたテキストには。
『文字列をテキストファイルに書き込みました。』
『追加。』
『』
『文字列を〜追加。』
『文字列を』
『文字列を』
『 追加。1+2=3』
と出力される。
つまり FileWriterのクラスでも、PrintWriterのクラスでも
"\n" の様な エスケープシーケンス や
"1+2=" + (1+2) の様な 出力も出来るらしい。
ただ、PrintlWriterのクラスでは println と print の性質の違いが
出るんだなっと 一人で納得。
今日の教訓
わからないところは まず 調べて 手を動かそう。
0 件のコメント:
コメントを投稿