要生成utf-8的xml文件,用以下代码生成的是gb2312格式static void Main(string[] args)
{
XmlDocument doc = new XmlDocument();
XmlNode docNode = doc.CreateXmlDeclaration("1.0", "UTF-8", null);
doc.AppendChild(docNode); // 创建根
XmlNode root = doc.CreateElement("data");
doc.AppendChild(root);
XmlNode idNode = doc.CreateElement("id");
idNode.AppendChild(doc.CreateTextNode("99"));
root.AppendChild(idNode);
XmlNode contentNode = doc.CreateElement("content");
contentNode.AppendChild(doc.CreateTextNode("收到消息"));
root.AppendChild(contentNode); doc.Save(Console.Out);
Console.ReadLine();
}这句XmlNode docNode = doc.CreateXmlDeclaration("1.0", "UTF-8", null);好像没有作用,改成utf-8还是生成gb2312,最后打印出的xml为
<?xml version="1.0" encoding="gb2312"?>
<data>
<id>99</id>
<content>收到的消息</content>
</data>怎么改成utf-8?
{
XmlDocument doc = new XmlDocument();
XmlNode docNode = doc.CreateXmlDeclaration("1.0", "UTF-8", null);
doc.AppendChild(docNode); // 创建根
XmlNode root = doc.CreateElement("data");
doc.AppendChild(root);
XmlNode idNode = doc.CreateElement("id");
idNode.AppendChild(doc.CreateTextNode("99"));
root.AppendChild(idNode);
XmlNode contentNode = doc.CreateElement("content");
contentNode.AppendChild(doc.CreateTextNode("收到消息"));
root.AppendChild(contentNode); doc.Save(Console.Out);
Console.ReadLine();
}这句XmlNode docNode = doc.CreateXmlDeclaration("1.0", "UTF-8", null);好像没有作用,改成utf-8还是生成gb2312,最后打印出的xml为
<?xml version="1.0" encoding="gb2312"?>
<data>
<id>99</id>
<content>收到的消息</content>
</data>怎么改成utf-8?
在VS里面打开你的这个.cs源代码文件,然后在菜单里面 File->advance save options(高级保存选项),把你的这个cs文件存为utf-8的格式。你的代码,我在我机器上不做任何改动,保存后打开里面的的内容是:
<?xml version="1.0" encoding="UTF-8"?>
<data>
<id>99</id>
<content>收到消息</content>
</data>
可能是其它原因。
XmlDocument doc = new XmlDocument();
XmlNode docNode = doc.CreateXmlDeclaration("1.0", "UTF-8", null);
doc.AppendChild(docNode); // 创建根
XmlNode root = doc.CreateElement("data");
doc.AppendChild(root);
XmlNode idNode = doc.CreateElement("id");
idNode.AppendChild(doc.CreateTextNode("99"));
root.AppendChild(idNode);
XmlNode contentNode = doc.CreateElement("content");
contentNode.AppendChild(doc.CreateTextNode("收到消息"));
root.AppendChild(contentNode);
doc.Save(@"e:\message.xml");//保存到磁盘上