Я хочу записать строку XML в zip-файл, используя C#:
var myXmlString = "..."; // Contains some XML
// Set up zip archive
var archive = ZipFile.Open(FileName, ZipArchiveMode.Create);
var stream = archive.CreateEntry("myfile.xml").Open();
var sw = new StreamWriter(stream, Encoding.UTF8);
// Write data
sw.Write(myXmlString);
// Cleanup
stream.Flush();
stream.Close();
archive.Dispose();
Это работает хорошо, за исключением одной детали: текст в сжатом файле обрезается. Так что XML просто обрезается в одной точке. Если я извлечу файл. xml из почтового индекса, он будет иметь размер 7,171 байт. Строка XML, которую я записал в файл, имеет длину 7,404 байта.
Может кто-нибудь помочь мне выяснить, куда пропали пропущенные байты?