其实将字符串写入XML文件本身并不复杂,这里只是写一些需要注意的地方,特别是编码格式,这里需要的是XML默认的编码方式是UTF-8,在对字符串进行编码的时候一定要注意,
string strReceiveData = srs.ReceiveData();
byte[] data = Encoding.UTF8.GetBytes(strReceiveData);
//将当前的字符串保存到XML文件中
System.IO.FileStream stream = new FileStream(System.AppDomain.CurrentDomain.BaseDirectory + "VedioChannel.xml", FileMode.Create);
BinaryWriter bw = new BinaryWriter(stream);
bw.Write(data);
但是这样的写入方式,没有任何格式,全都乱作一团,但是在读取的时候也是没有问题的。
另外一种方式是采用System.Xml命名空间下面的一些Load方法、XmlTextWriter的一些方法来完成写入,这种方法能够设置字符串的一些缩进格式等,这样整理出来的XML格式更加工整,而且采用了一种完全不同的方式,这两种方式都能达到效果。
//将当前的xml形式的的string 写入到XML文件
public void WriteStringToXml(string recvString)
{
//首先清除掉XML文件里面的所有内容
XmlDocument xd = new XmlDocument();
try
{
xd.Load(System.AppDomain.CurrentDomain.BaseDirectory + "VedioChannel.xml");
xd.LoadXml(recvString);
XmlTextWriter writer = new XmlTextWriter("VedioChannel.xml", null);
writer.Formatting = Formatting.Indented;//设置非常重要的缩进格式
xd.Save(writer);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
//xd.Save(System.AppDomain.CurrentDomain.BaseDirectory + "VedioChannel.xml");
}