读书人

求C#读取XML字符串的完整代码解决办法

发布时间: 2012-06-13 12:30:18 作者: rapoo

求C#读取XML字符串的完整代码

如题,XML字符串如下:
<?xml version="1.0" encoding="utf-16"?>
<MapView xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Id="34">
<Devices>
<DeviceView Id="34000000-0000-0000-0011-000000000001" Left="1223.493408203125" Top="403.00531005859375" Angle="0" />
<DeviceView Id="34000000-0000-0000-0011-000000000002" Left="1180.7918701171875" Top="425.95571899414062" Angle="0" />
<DeviceView Id="34000000-0000-0000-0011-000000000118" Left="244.87860107421875" Top="358.30874633789062" Angle="0" />
<DeviceView Id="34000000-0000-0000-0011-000000000119" Left="230.990234375" Top="363.33819580078125" Angle="0" />
<DeviceView Id="34000000-0000-0000-0011-000000000120" Left="1335.5994873046875" Top="790.2198486328125" Angle="0" />
<DeviceView Id="34000000-0000-0000-0011-000000000121" Left="633.4530029296875" Top="31.482200622558594" Angle="0" />
<DeviceView Id="34000000-0000-0000-0011-000000000122" Left="561.5120849609375" Top="28.622438430786133" Angle="0" />
</Devices>
</MapView>

[解决办法]
http://www.jb51.net/article/18576.htm
[解决办法]

C# code
            string xml=@"<?xml version=""1.0"" encoding=""utf-16""?><MapView xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"" Id=""34"">  <Devices>  <DeviceView Id=""34000000-0000-0000-0011-000000000001"" Left=""1223.493408203125"" Top=""403.00531005859375"" Angle=""0"" />  <DeviceView Id=""34000000-0000-0000-0011-000000000002"" Left=""1180.7918701171875"" Top=""425.95571899414062"" Angle=""0"" />     <DeviceView Id=""34000000-0000-0000-0011-000000000118"" Left=""244.87860107421875"" Top=""358.30874633789062"" Angle=""0"" />  <DeviceView Id=""34000000-0000-0000-0011-000000000119"" Left=""230.990234375"" Top=""363.33819580078125"" Angle=""0"" />  <DeviceView Id=""34000000-0000-0000-0011-000000000120"" Left=""1335.5994873046875"" Top=""790.2198486328125"" Angle=""0"" />  <DeviceView Id=""34000000-0000-0000-0011-000000000121"" Left=""633.4530029296875"" Top=""31.482200622558594"" Angle=""0"" />  <DeviceView Id=""34000000-0000-0000-0011-000000000122"" Left=""561.5120849609375"" Top=""28.622438430786133"" Angle=""0"" />  </Devices></MapView>";            XmlDocument doc = new XmlDocument();            doc.LoadXml(xml);            foreach (XmlNode node in doc.SelectNodes("MapView/Devices/DeviceView"))            {                Console.Write(node.Attributes["Id"].Value + "\t");                Console.Write(node.Attributes["Left"].Value + "\t");                Console.Write(node.Attributes["Top"].Value + "\t");                Console.Write(node.Attributes["Angle"].Value + "\t");                Console.WriteLine();            } 


[解决办法]
XmlDocument xDoc = new XmlDocument();
xDoc.LoadXml("xml字符串");
[解决办法]
你这段需要编码转换

C# code
            XmlDocument doc = new XmlDocument();            FileStream fs = new FileStream("c:\\1.txt", FileMode.Open);            StreamReader sr = new StreamReader(fs,Encoding.GetEncoding("gb2312"));            doc.LoadXml(sr.ReadToEnd().Trim());            XmlNodeList list = doc.DocumentElement.SelectSingleNode("Devices").SelectNodes("DeviceView");            foreach (XmlNode node in list)            {//显示id属性内容                MessageBox.Show(node.Attributes["Id"].Value);            }
[解决办法]
http://d.download.csdn.net/down/3433281/chenfan31 可以参考下这个例子
[解决办法]
探讨
引用:
不用写在文件。直接用XML字符串即可

读书人网 >C#

热点推荐