我获取字符串源码如下: public static string Hotpic() {
DataSet Hotpic = NewsManager.GetList(5, "ispic=0", "newsdate desc");
string picnews = "<?xml version=\"1.0\" encoding=\"utf-8\"?><data><channel>";
if (Hotpic.Tables[0].Rows.Count > 0)
{
for (int i=0; i < Hotpic.Tables[0].Rows.Count; i++)
{
picnews += "<item><title>";
picnews += Hotpic.Tables[0].Rows[i]["title"].ToString();
picnews += "</title></item>";
}
picnews +="</data></cannel>";
}
return Hotpic.ToString ();
在页面中的调用: protected void Page_Load(object sender, EventArgs e)
{
string hotpic = "";
hotpic = Readpicnews .Hotpic ();
System.Xml.XmlDocument dc = new XmlDocument();
dc.Load(hotpic);
dc.Save("C:\\student.XML"); }
老是报错
DataSet Hotpic = NewsManager.GetList(5, "ispic=0", "newsdate desc");
string picnews = "<?xml version=\"1.0\" encoding=\"utf-8\"?><data><channel>";
if (Hotpic.Tables[0].Rows.Count > 0)
{
for (int i=0; i < Hotpic.Tables[0].Rows.Count; i++)
{
picnews += "<item><title>";
picnews += Hotpic.Tables[0].Rows[i]["title"].ToString();
picnews += "</title></item>";
}
picnews +="</data></cannel>";
}
return Hotpic.ToString ();
在页面中的调用: protected void Page_Load(object sender, EventArgs e)
{
string hotpic = "";
hotpic = Readpicnews .Hotpic ();
System.Xml.XmlDocument dc = new XmlDocument();
dc.Load(hotpic);
dc.Save("C:\\student.XML"); }
老是报错
2.估计是在dc.Save("C:\\student.XML"); 的时候报错的吧,
3.解决办法:断点到dc.Load(hotpic);取出hotpic的值,复制到一个新建的xml文件中,如a.xml;
4.大开a.xml ,可以看见存储的内容,那里不符合规范
<data><channel>
......
</data></cannel>";元素嵌套出错,自己再查查XML脚本!
</cannel>
其中一个写错了
--------------------------------------------------------------------------------未能找到文件“C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\System.Data.DataSet”。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.IO.FileNotFoundException: 未能找到文件“C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\System.Data.DataSet”。源错误:
行 20: hotpic = Readpicnews .Hotpic ();
行 21: System.Xml.XmlDocument dc = new XmlDocument();
行 22: dc.Load(hotpic);
行 23: dc.Save("C:\\student.XML");
行 24: }
错误代码在这里,channel那个修改后也一样
- <data>
- <channel>
- <item>
<title>标题1</title>
<link>http://www.baidu.com/</link>
<image>upload/pic/01.jpg</image>
<time>2009-7-27 13:27:49</time>
</item>
- <item>
<title>标题2</title>
<link>http://www.163.com/</link>
<image>upload/pic/02.jpg</image>
<time>2009-7-27 13:28:21</time>
</item>
- <item>
<title>标题3</title>
<link>http://www.baidu.com/</link>
<image>upload/pic/03.jpg</image>
<time>2009-7-27 13:29:23</time>
</item>
- <item>
<title>标题4</title>
<link>http://www.163.com/</link>
<image>upload/pic/04.jpg</image>
<time>2009-7-27 13:29:23</time>
</item>
</channel>
</data>这个是我想写的XML,这个也是正在使用中的XML
XmlDocument xml = new XmlDocument();
xml.Load(string filename); //是xml文件路径
//
xml.LoadXml(string xml); //xml文本
不好意思,我是想吧已经读取的字符串写成XML文件,不是读取XML文件
protected void Page_Load(object sender, EventArgs e)
{
string hotpic = "";
hotpic = Readpicnews .Hotpic ();
System.Xml.XmlDocument dc = new XmlDocument();
dc.LoadXml(hotpic); //改这里
dc.Save("C:\\student.XML"); }