为简洁起见,删除了适当的对象处理,但如果这是在内存中将对象编码为UTF-8的最简单方法,我会感到震惊.必须有一种更简单的方法吗?
var serializer = new XmlSerializer(typeof(SomeSerializableObject));
var memoryStream = new MemoryStream();
var streamWriter = new StreamWriter(memoryStream, System.Text.Encoding.UTF8);
serializer.Serialize(streamWriter, entry);
memoryStream.Seek(0, SeekOrigin.Begin);
var streamReader = new StreamReader(memoryStream, System.Text.Encoding.UTF8);
var utf8EncodedXml = streamReader.ReadToEnd();
Run Code Online (Sandbox Code Playgroud)