Это очень кстати ... после того, как был задан оригинальный вопрос, но он появился в результатах поиска Google.
Сегодня я прошел через нечто подобное и хотел поделиться своим ответом (для следующей несчастной души, которая столкнулась с этой путаницей).
Я использую StreamWriter (sw) с MemoryStream (мс), чтобы сохранить данные в памяти, а затем через определенные промежутки времени выводить их в поток файлов (fs).
Так я и делал
sw.WriteLine(DateTime.Now.ToString("u").Replace("Z", "") & ": " & entry)
А потом, после всего, что было сказано и сделано
ms.WriteTo(fs)
fs.Flush()
fs.Close()
ms.Close()
Проблема заключалась в том, что я сначала не сбрасывал StreamWriter в MemoryStream
Изменение этой проблемы решило мою проблему.
sw.Flush()
ms.WriteTo(fs)
fs.Flush()
fs.Close()
ms.Close()