2
我有一个自定义XML序列化可序列化类型和方法签名是:字符串编码相关的问题
string result = CustomXmlSerializer.Serialize(someObject);
我希望把它在网页中像可序列化的结果:
Response.ClearContent();
Response.AddHeader("content-disposition", "attachment; filename=\"somefilename.xml\"");
Response.BufferOutput = true;
Response.ContentEncoding = Encoding.UTF8;
Response.ContentType = "text/xml; encoding=utf-8";
string content= CustomXmlSerialize.Serialize(someObject);
byte[] utf8Bytes = Encoding.UTF8.GetBytes(content);
Response.OutputStream.Write(utf8Bytes, 0, utf8Bytes.Length);
Response.End();
但是,生成的xml仍然是字符串内存中的编码(utf-16)?这怎么可能?我正在给编码为utf-8的字节数组写入HttpResponse
?
也许你应该添加xml到你的标签 – 2012-02-08 13:23:27
生成的文件是正确的,但它有<?xml version =“1.0”encoding =“utf-16”?>它应该是<编码=“utf-8” > – Elena 2012-02-08 13:26:07