Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用单个数据获取XML_C#_Xml - Fatal编程技术网

C# 使用单个数据获取XML

C# 使用单个数据获取XML,c#,xml,C#,Xml,此网站以XML格式报告数据 <markers> <marker lat="xxx" lng="xxx" city="xxx" country="xxx" host="xxx" ip="xx" code="xx"/> </markers> 但是返回所有xml数据一旦获得要查找的节点(标记),就可以从中获取属性。请注意,通常最好在从属性访问属性之前检查属性是否为null。这是获取lat属性的示例: XmlDocument d

此网站以XML格式报告数据

<markers> 
    <marker lat="xxx" lng="xxx" city="xxx" 
        country="xxx" host="xxx" ip="xx" code="xx"/> 
</markers>

但是返回所有xml数据

一旦获得要查找的节点(标记),就可以从中获取属性。请注意,通常最好在从属性访问属性之前检查属性是否为null。这是获取lat属性的示例:

    XmlDocument doc = new XmlDocument();
    doc.Load("http://geoiptool.com/data.php");

    var marker = doc.SelectSingleNode("//markers/marker");
    string lat = marker.Attributes["lat"].Value;

一旦获得要查找的节点(标记),就可以从中获取属性。请注意,通常最好在从属性访问属性之前检查属性是否为null。这是获取lat属性的示例:

    XmlDocument doc = new XmlDocument();
    doc.Load("http://geoiptool.com/data.php");

    var marker = doc.SelectSingleNode("//markers/marker");
    string lat = marker.Attributes["lat"].Value;
另一个选项(而不是
XmlDocument
)是使用
XElement
。这允许使用Linq,这使一切变得更好

XElement root = XElement.Load("http://geoiptool.com/data.php"); //check me on that, not sure if it will handle urls
foreach(var marker in root.Elements("marker"))
{
    string lat = marker.Attribute("lat").Value;
    string lng = marker.Attribute("lng").Value;
    ...
}
另一个选项(而不是
XmlDocument
)是使用
XElement
。这允许使用Linq,这使一切变得更好

XElement root = XElement.Load("http://geoiptool.com/data.php"); //check me on that, not sure if it will handle urls
foreach(var marker in root.Elements("marker"))
{
    string lat = marker.Attribute("lat").Value;
    string lng = marker.Attribute("lng").Value;
    ...
}

try doc.Load(“.Attributes”(.lat”)不起作用此代码=(@TamilSelvan,
doc.Load
返回无效。您需要将代码分成两条语句。try doc.Load(.Attributes(“lat”)不起作用此代码=(@TamilSelvan,
doc.Load
返回void。您需要将代码分成两条语句。