Это работает:
using (StreamWriter stw = new StreamWriter(Server.MapPath("\\xml\\file.xml")))
{
stw.Write(xmlEncStr);
}
Это создает пустой файл:
using (FileStream file = new FileStream(Server.MapPath("\\xml\\file.xml"), FileMode.CreateNew))
{
using (StreamWriter sw = new StreamWriter(file))
{
sw.Write(xmlEncStr);
}
}
Я попытался поиграться с конструктором FileStream и попытался очистить, и я все еще получаю файл нулевого байта. Строка, которую я пишу, представляет собой простую строку ascii в кодировке base64 без специальных символов.
Я знаю, что могу использовать первый пример, но почему не работает второй?
Обновление
Это не проблема Filestream / StreamWriter - это проблема именования переменных. Я исправил код выше, так что теперь обе версии работают. У меня изначально было:
StreamWriter strw = new StreamWriter(file)