Что мне делать? Когда я пишу поток обратно в Интернет, откройте файл, в котором содержится часть контента, но все искажено, а некоторые отсутствуют.memystream содержит плохую разметку xml при чтении
Я испытываю потерю данных из-за логической ошибки?
Примечание: поток readstream и writestream подмахивает тем, что будет заполняться службой. Я получаю поток для чтения из службы. Мне нужно будет написать этот поток.
MemoryStream writeStream = new MemoryStream();
byte[] buffer = new byte[256];
OrderDocument doc = new OrderDocument();
doc.Format = "xml";
doc.DocumentId = "5555555";
doc.Aid = "ZZ";
doc.PrimaryServerPort = "PORT";
MemoryStream readStream = new MemoryStream(doc.GetDocument());
while (readStream != null && readStream.Read(buffer, 0, buffer.Length) > 0)
{
writeStream.Write(buffer, 0, buffer.Length);
}
writeStream.Flush();
writeStream.Position = 0;
Response.Buffer = true;
Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.ContentType = "text/xml";
Response.ClearHeaders();
Response.AddHeader("Content-Disposition", string.Format("attachment; filename={0}.xml", doc.DocumentId));
Response.AddHeader("Content-Length", writeStream.Length.ToString());
Response.BinaryWrite(writeStream.ToArray());
Response.End();
Что такое 'OrderDocument'? Что делает 'doc.GetDocument()' do? Какие данные они содержат? Кроме того, это может быть проблемой кодирования. То, что вы описываете, похоже на то, что происходит, когда текстовый ридер смешивает UTF-8 и ASCII. Играйте с кодировкой вывода. – GregRos