问个XML的问题

allenzhang0004 2010-08-20 10:01:42
<?xml version="1.0" encoding="gb2312"?>
<bookstore>
<book genre="fantasy" ISBN="2-3631-4">
<title>Oberon's Legacy</title>
<author>Corets, Eva</author>
<price>5.95</price>
</book>
</bookstore>

我想写一个如上的xml文件,但我写的总是报Invalid XML document, The document does not have a root element..

要加个根节点上去,请问用CreateXmlDeclaration()怎么创建个根节点??

另外<?xml version="1.0" encoding="gb2312"?> 怎么用这种方法写上去,
不要 writer.WriteRaw("<?xml version=""1.0"" encoding=""utf-8"" ?>") 这种

各位有办法吗??谢谢了

...全文
406 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
wuyq11 2010-08-20
  • 打赏
  • 举报
回复
没有根节点
string xml = @"<?xml version=""1.0""?>";
XmlDocument doc= new XmlDocument();
doc.LoadXml(xml);
doc.Save("c:\\a.xml");

XmlDocument xmldoc = new XmlDocument();
XmlNode xmlnode = xmldoc.CreateXmlDeclaration("1.0", "gb2312", null);
xmldoc.AppendChild(xmlnode);

XmlElement xmlelem = xmldoc.CreateElement("", "", "");
XmlText xmltext = xmldoc.CreateTextNode("");
xmlelem.AppendChild(xmltext);
xmldoc.AppendChild(xmlelem);
还有XMLTextWrite
阿双2009 2010-08-20
  • 打赏
  • 举报
回复

XmlTextWriter xmlWriter = new XmlTextWriter(path, Encoding.UTF8);//创建一个xml文档
xmlWriter.Formatting = Formatting.Indented; //设置缩进
xmlWriter.WriteStartDocument();
//创建根节点
xmlWriter.WriteStartElement("data");
//新建节点
xmlWriter.WriteStartElement("日期");
//写节点内容
xmlWriter.WriteString(System.DateTime.Now.Year + "-" + System.DateTime.Now.Month + "-" + System.DateTime.Now.Day);
xmlWriter.WriteEndElement();
xmlWriter.WriteEndElement();
xmlWriter.Close();
zhuxiaojun2002 2010-08-20
  • 打赏
  • 举报
回复
XmlTextWriter
allenzhang0004 2010-08-20
  • 打赏
  • 举报
回复
Private Sub createXML(ByVal xmlFileName As String)

Dim xmlDoc As New XmlDocument
Dim xe1 As XmlElement

xmlDoc.AppendChild(xmlDoc.CreateXmlDeclaration("1.0", "utf-8", "yes"));

xe1 = xmlDoc.CreateElement("book")
xe1.SetAttribute("genre", "李赞红") '设置该节点genre属性
xe1.SetAttribute("ISBN", "2-3631-4") '设置该节点ISBN属性
Dim xesub1 As XmlElement
xesub1 = xmlDoc.CreateElement("title")
xesub1.InnerText = "CS从入门到精通" '设置文本节点
xe1.AppendChild(xesub1) '添加到<book>节点中
xmlDoc.Save(Application.StartupPath & "\" & xmlFileName)

End Sub

还是不知道怎么创建一个根节点 郁闷
allenzhang0004 2010-08-20
  • 打赏
  • 举报
回复
3Q 我试试
  • 打赏
  • 举报
回复
XmlDocument xd = new XmlDocument();
xd.AppendChild(xd.CreateXmlDeclaration("1.0", "utf-8", "yes"));
allenzhang0004 2010-08-20
  • 打赏
  • 举报
回复
谢谢大家了

111,112

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧