[求助]请教ASP.NET更新XML的问题请大家帮忙!多谢!

gd1088 2004-05-04 09:08:57
唉,没分了,只好重新注册帐号,请大家帮帮忙吧,,多谢了

我有一个XML文件,内容是这样:
<?xml version="1.0" encoding="gb2312"?>
<WebSettings>
<WebName>我的主页</WebName>
<WebUrl>http://</WebUrl>
<LogoUrl>http://</LogoUrl>
</WebSettings>

我用这样的方法更新里面的内容:
System.Data.DataSet Ds = new DataSet();
Ds.ReadXml(Server.MapPath("xml/WebSet.xml"));
Ds.Tables[0].Rows[0]["WebName"] = TextBox1.Text;
Ds.WriteXml(Server.MapPath("xml/WebSet.xml"));
Ds.Dispose();

问题出现了,问题是把内容更新为英文或数字就很正常,如果更新为中文,就会变成乱码,甚至破坏XML文件的结构,而且更新后XML文件的头部声明会变为“<?xml version="1.0" standalone="yes" ?>”,我不太明白“standalone="yes"”是什么意思,有人懂吗?
我就是怀疑更新后“encoding="gb2312"”不见了,所以中文才会变乱码,请问有办法解决吗?
...全文
28 8 点赞 打赏 收藏 举报
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
welot 2004-05-07
修改Web.Congfig
  • 打赏
  • 举报
回复
gd1088 2004-05-05
还是有错误,觉得DataSet读写XML不太好用,还有什么好方法吗?
  • 打赏
  • 举报
回复
gd1088 2004-05-05
顶啊,,,帮帮忙吧……
  • 打赏
  • 举报
回复
gd1088 2004-05-05
在顶,,,
  • 打赏
  • 举报
回复
bitsbird 2004-05-04
DataSet ds=new DataSet();
//fill ds here
string filename = "c:\\myXmlDoc.txt";
// Create the FileStream to write with.
System.IO.FileStream myFileStream = new System.IO.FileStream(filename, System.IO.FileMode.Create);
// Create an XmlTextWriter with the fileStream.
System.Xml.XmlTextWriter myXmlWriter =
new System.Xml.XmlTextWriter(myFileStream, System.Text.Encoding.GetEncoding("gb2312"));
// Write to the file with the WriteXml method.
ds.WriteXml(myXmlWriter);
myXmlWriter.Close();
  • 打赏
  • 举报
回复
gd1088 2004-05-04
有什么办法解决乱码呢?
  • 打赏
  • 举报
回复
bitsbird 2004-05-04
如果 XML 文档所需要的所有实体声明都包含在文档内,则有效值为 yes,或者如果需要外部 DTD,则为 no。如果 XML 声明中没有独立特性,该属性将返回 String.Empty。
  • 打赏
  • 举报
回复
yhmar007 2004-05-04
encoding="gb2312"可以在webconfig里设置啊
  • 打赏
  • 举报
回复
相关推荐
发帖
.NET社区
加入

5.9w+

社区成员

.NET技术交流专区
申请成为版主
帖子事件
创建了帖子
2004-05-04 09:08
社区公告
暂无公告