【初心者】Java質問・相談スレッド103【大歓迎】at TECH【初心者】Java質問・相談スレッド103【大歓迎】 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト714:デフォルトの名無しさん 07/07/17 23:19:03 >>712 > 調べた結果、close()する前にflush()をしなければいけないということが分かったので それは嘘。close() する前に flush() する必要はない。 715:デフォルトの名無しさん 07/07/17 23:42:06 >>710>>711 レスさんくすです 先輩のアドバイスは私の解釈違いかも知れないのでスルーしてください JAXBはSE6以前からあったんですね SE6で標準APIに加えられたとの解釈でOKですかね? 716:712 07/07/18 00:05:20 >>714 表現が少しあいまいでした。 正確には研究室の先生に出力が途切れる現象を伝えたところ、flush()すれば大丈夫との回答が得られ、実際にflush()の行を追加したところ、すべてが出力されたという状態です。 BufferedWriterのjavadocでは flush public void flush() throws IOExceptionストリームをフラッシュします。 定義: クラス Writer 内の flush 例外: IOException - 入出力エラーが発生した場合 -------------------------------------------------------------------------------- close public void close() throws IOExceptionストリームを閉じます。 定義: クラス Writer 内の close 例外: IOException - 入出力エラーが発生した場合 とあって、closeが内部でflushを行ってからストリームを閉じるとは書いてはないので、実は明示的に行わないとまずいのではと思ったのですが・・・ でもいくつかのページではcloseはflushを行った後にストリームを閉じるって書いてあって、でも各ページの説明で使っているサンプルコードにはちゃんとcloseの前にflushが入っているわけで・・・ 初めに出力されなかった問題点はもっと別のところにあるのかな? 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch