问题描述
XML文件:<histNewsxmlns="http://www.163.com/rss/0.9"><news><title>什么什么什么</title><time>2008-12-11</time></news><histNews>读取方式:stringurl=Server.MapPath("/sitemap/Sitemaps.xml");XmlDocumentxmlDoc=newXmlDocument();xmlDoc.Load(url);stringnews_title="12311";stringnews_time="2008-12-05";XmlNoderoot=xmlDoc.DocumentElement;XmlElementnews=xmlDoc.CreateElement("news");XmlElementtitle=xmlDoc.CreateElement("title");title.InnerText=news_title;news.AppendChild(title);XmlElementtime=xmlDoc.CreateElement("time");time.InnerText=news_time;news.AppendChild(time);root.AppendChild(news);xmlDoc.Save(url);结果:<newsxmlns=""><title>什么什么</title><time>2008-12-14</time></news>要求:红色部份去掉!
解决方案
解决方案二:
XmlNoderoot=xmlDoc.SelectSingleNode("news");参考http://www.cnblogs.com/ziyan22/archive/2007/08/23/866456.html
解决方案三:
搂主上贴中我就猜到搂主是想创建XML,而不是读取,所以说根本不用调用load了搂主完全改成下面的,就行了:stringurl=Server.MapPath("/sitemap/Sitemaps.xml");XmlDocumentxmlDoc=newXmlDocument();stringnews_title="12311";stringnews_time="2008-12-05";XmlNoderoot=xmlDoc.CreateElement("histNews");XmlElementnews=xmlDoc.CreateElement("news");XmlElementtitle=xmlDoc.CreateElement("title");title.InnerText=news_title;news.AppendChild(title);XmlElementtime=xmlDoc.CreateElement("time");time.InnerText=news_time;news.AppendChild(time);root.AppendChild(news);xmlDoc.AppendChild(root);xmlDoc.Save(url);
解决方案四:
噢,没标出我改动的地方,标示一下吧:stringurl=Server.MapPath("/sitemap/Sitemaps.xml");XmlDocumentxmlDoc=newXmlDocument();//xmlDoc.Load(url);stringnews_title="12311";stringnews_time="2008-12-05";XmlNoderoot=xmlDoc.CreateElement("histNews");XmlElementnews=xmlDoc.CreateElement("news");XmlElementtitle=xmlDoc.CreateElement("title");title.InnerText=news_title;news.AppendChild(title);XmlElementtime=xmlDoc.CreateElement("time");time.InnerText=news_time;news.AppendChild(time);root.AppendChild(news);xmlDoc.AppendChild(root);xmlDoc.Save(url);注意:搂主还需确信sitemap文件夹是存在的,否则得先创建好
解决方案五:
另外,上面代码还删掉了一句:XmlNoderoot=xmlDoc.DocumentElement;刚才测试了一下上面代码是对的
解决方案六:
XML文件:<histNewsxmlns="http://www.163.com/rss/0.9"><news><title>什么什么什么</title><time>2008-12-11</time></news><histNews>
结尾的时候要关闭</histNews>
解决方案七:
楼主还在问这个问题啊,注意加一个参数。还有你的<histNews>...</histNews>结束标记xmlDoc.CreateElement("news","http://www.163.com/rss/0.9");stringurl=Server.MapPath("/sitemap/Sitemaps.xml");XmlDocumentxmlDoc=newXmlDocument();xmlDoc.Load(url);stringnews_title="12311";stringnews_time="2008-12-05";XmlNoderoot=xmlDoc.DocumentElement;XmlElementnews=xmlDoc.CreateElement("news","http://www.163.com/rss/0.9");XmlElementtitle=xmlDoc.CreateElement("title","http://www.163.com/rss/0.9");title.InnerText=news_title;news.AppendChild(title);XmlElementtime=xmlDoc.CreateElement("time","http://www.163.com/rss/0.9");time.InnerText=news_time;news.AppendChild(time);root.AppendChild(news);xmlDoc.Save(url);
解决方案八:
纠正一下,呵呵,搂主帖子已经说明了:要去掉XML名称空间的声明搂主是要创建这个XML,所以不需要这个XML文件事先已经存在的,直接使用3楼代码就可以啦