Javaでログが出力されないです。
「スッキリわかるJava入門実践編第2版」を参考に下記の通りにしても、ログが出力されません。
this.writer.write(msg);の後にthis.writer.close()とすれば、firstだけ出力されるのですが、secondも出力する方法はありますでしょうか。
※C:\Users\hoge\Desktop\testlog.txtにはすでにある状態です。
MyLogger.java
public final class MyLogger {
private static MyLogger theInstance; /* 唯一のインスタンス保存用 */
private FileWriter writer;
private MyLogger() {
try{
this.writer = new FileWriter("C:\\Users\\hoge\\Desktop\\testlog.txt");
}catch(IOException e) { /* エラー処理は省略 */ }
}
public void log(String msg) throws IOException {
this.writer.write(msg);
}
public static MyLogger getInstance() {
if(theInstance == null) theInstance = new MyLogger();
return theInstance;
}
}
Main.java
public class Main {
public static void main(String[] args) throws IOException {
MyLogger myLogger1 = MyLogger.getInstance();
myLogger1.log("first");
MyLogger myLogger2 = MyLogger.getInstance();
myLogger2.log("second");
}
}