小弟想把一些xml序列化成字符串
MemoryStream ms = new MemoryStream();
XmlTextWriter xmlWriter = new XmlTextWriter(ms, Encoding.UTF8);
XmlSerializer formatter = new XmlSerializer(typeof(OBj));
formatter.Serialize(xmlWriter, parameters); // OBj parameters; 可xml时 出错
xmlWriter.Close();
string info = Encoding.UTF8.GetString(ms.ToArray()); 滴二个问题!! XmlSerializer xmlSrlzr = new XmlSerializer(typeof(Domain.SoulBaseInfo));
MemoryStream ms = new MemoryStream();
XmlTextWriter xmlWriter = new XmlTextWriter(ms, Encoding.UTF8);
XmlSerializer formatter = new XmlSerializer(typeof(Domain.SoulBaseInfo));
formatter.Serialize(xmlWriter, baseInfo);
xmlWriter.Close();
string info = Encoding.UTF8.GetString(ms.ToArray());
info = info.Replace("<?xml version=\"1.0\" encoding=\"utf-8\"?>", "\r\a"); //删除第一行序列化后为 <?xml version="1.0" encoding="utf-8" ?> //这行不要 但是要是像上面代码中删除 就会提示 xml顶层无效。。原来用另一个方法的时候也没有这行 也没提示有错误 请问这行怎么删?
- <SoulBaseInfo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.openxmlformats.org/2011/BaseInfo">
<ID>7b24ed37-86e6-4ee1-b0ef-39d9c09738e9</ID>
<InstanceID>7b24ed37-86e6-4ee1-b0ef-39d9c09738e9</InstanceID>
<Name>7b24ed37-86e6-4ee1-b0ef-39d9c09738e9</Name>
<Version>1.0.0.0</Version>
<Path />
<Description />
<Author />
<TargetHost>Excel</TargetHost>
<RobotType>Office</RobotType>
<Tag xsi:type="xsd:string" />
<Icon />
<ExecuteType>Execute</ExecuteType>
</SoulBaseInfo>
MemoryStream ms = new MemoryStream();
XmlTextWriter xmlWriter = new XmlTextWriter(ms, Encoding.UTF8);
XmlSerializer formatter = new XmlSerializer(typeof(OBj));
formatter.Serialize(xmlWriter, parameters); // OBj parameters; 可xml时 出错
xmlWriter.Close();
string info = Encoding.UTF8.GetString(ms.ToArray()); 滴二个问题!! XmlSerializer xmlSrlzr = new XmlSerializer(typeof(Domain.SoulBaseInfo));
MemoryStream ms = new MemoryStream();
XmlTextWriter xmlWriter = new XmlTextWriter(ms, Encoding.UTF8);
XmlSerializer formatter = new XmlSerializer(typeof(Domain.SoulBaseInfo));
formatter.Serialize(xmlWriter, baseInfo);
xmlWriter.Close();
string info = Encoding.UTF8.GetString(ms.ToArray());
info = info.Replace("<?xml version=\"1.0\" encoding=\"utf-8\"?>", "\r\a"); //删除第一行序列化后为 <?xml version="1.0" encoding="utf-8" ?> //这行不要 但是要是像上面代码中删除 就会提示 xml顶层无效。。原来用另一个方法的时候也没有这行 也没提示有错误 请问这行怎么删?
- <SoulBaseInfo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.openxmlformats.org/2011/BaseInfo">
<ID>7b24ed37-86e6-4ee1-b0ef-39d9c09738e9</ID>
<InstanceID>7b24ed37-86e6-4ee1-b0ef-39d9c09738e9</InstanceID>
<Name>7b24ed37-86e6-4ee1-b0ef-39d9c09738e9</Name>
<Version>1.0.0.0</Version>
<Path />
<Description />
<Author />
<TargetHost>Excel</TargetHost>
<RobotType>Office</RobotType>
<Tag xsi:type="xsd:string" />
<Icon />
<ExecuteType>Execute</ExecuteType>
</SoulBaseInfo>
http://www.cnblogs.com/solan/archive/2012/08/31/CSharp14.html