今日、ハードディスク上にあるファイルに情報を書き込んでいるある種のサーブレットで作業していたとき、次のコードを使用して書き込み操作を実行していました。
File f=new File("c:/users/dell/desktop/ja/MyLOgs.txt");
PrintWriter out=new PrintWriter(new FileWriter(f,true));
out.println("the name of the user is "+name+"\n");
out.println("the email of the user is "+ email+"\n");
out.close(); //**my question is about this statement**
ステートメントを使用していないとき、サーブレットは正常にコンパイルされていましたが、ファイルには何も書き込まれていませんでしたが、それを含めると、書き込み操作は正常に実行されました。私の質問は次のとおりです。
- そのステートメントを含めなかったときにデータがファイルに書き込まれなかったのはなぜですか(サーブレットでさえエラーなしでコンパイルされていました)?
- ストリームのクローズ操作はどの程度まで重要ですか?