> finally
> {
> if (sw != null)
> sw.Close(); //ここで例外発生
>
> if (fs != null)
> fs.Close();
> }

これってさあ、fs.Close()する意味あるの?
sw.Close() って元になるストリームを閉じるためのものじゃないの?

「現在の StreamWriter と基になるストリームをクローズします。」
と書いてあるんだけど。俺はだまされてるのか?