想认识对aspx&xml&c#感兴趣的朋友
为什么用c#的xml空间的XmlTextWriter.WriteStartDocument()函数只能生成<?xml version="1.0"?>而不能生成<?xml version="1.0"? encoding="gb2312">,有对aspx&xml&c#的朋友不妨一起探讨一下
问题点数:10、回复次数:8Top
1 楼saucer(思归)回复于 2002-05-28 19:43:28 得分 10
try something like
Xml.XmlDeclaration dec;
.....
if (xmldoc.FirstChild.NodeType = Xml.XmlNodeType.XmlDeclaration)
{
dec = xmldoc.FirstChild;
dec.Encoding = "gb2312";
}
Top
2 楼biscuit26(饼干)回复于 2002-05-29 16:36:09 得分 0
saucer,xmldoc怎么实例化呢,能给我完整的代码吗,谢谢Top
3 楼wangbinan0526(王彬安)回复于 2002-05-29 17:14:24 得分 0
不行啊,它说Cannot implicitly convert type 'System.Xml.XmlNode' to 'System.Xml.XmlDeclaration'
Top
4 楼saucer(思归)回复于 2002-05-29 19:33:27 得分 0
using System.Xml;
XmlDocument xmldoc = new XmlDocument();
xmldoc.Load("stockholm.xml");
XmlDeclaration dec;
if (xmldoc.FirstChild.NodeType = XmlNodeType.XmlDeclaration)
{
dec = (XmlDeclaration) xmldoc.FirstChild;
dec.Encoding = "gb2312";
}
Top
5 楼biscuit26(饼干)回复于 2002-05-30 07:56:23 得分 0
思归兄,按照你的代码,编译是通过了,但是xml文件的encoding属性还是没有,你这种方法能设置它的属性吗?为什么用XmlTextWriter类写xml文件的时候不能设置encoding属性呢?谢谢Top
6 楼saucer(思归)回复于 2002-05-30 08:33:53 得分 0
try
XmlTextWriter myXmlTextWriter = new XmlTextWriter (args,System.Text.Encoding.GetEncoding("gb2312"));
Top
7 楼biscuit26(饼干)回复于 2002-05-30 13:30:00 得分 0
思归兄,谢谢你的指点,按照你的方法,在console apllicaion是可以实现了,但在asp.net中,好象写不出xml文件,比如XmlTextWriter myXmlTextWriter = new XmlTextWriter ("d:/myxml.xml",System.Text.Encoding.GetEncoding("gb2312"));但我去打开myxml文件的时候,它说“进程无法访问此文件,因为另一个程序正在使用此文件),不知是什么原因,望指教,多谢
Top
8 楼biscuit26(饼干)回复于 2002-05-30 13:45:22 得分 0
在winddows applicaion中也不行,编译后出现如下信息Loaded 'e:\winnt\assembly\gac\system.xml\1.0.3300.0__b77a5c561934e089\system.xml.dll', No symbols loaded.,写出来的xml文件是空的Top




