No jsem na tom takhle. Napsal jsem si jednoduchý konzolový prográmek, který by měl vyflusnout 5 řádků textu. Tady je zdroják:
XmlDocument doc = new XmlDocument();
try
{
doc.Load("soubor.gpx");
XmlNamespaceManager nsm = new XmlNamespaceManager(doc.NameTable);
nsm.AddNamespace("", "http://www.topografix.com/GPX/1/0");
nsm.AddNamespace("xsd", "http://www.w3.org/2001/XMLSchema");
nsm.AddNamespace("xsi", "http://www.w3.org/2001/XMLSchema-instance");
Console.WriteLine(doc.SelectSingleNode("desc").InnerText);
foreach (XmlNode node in doc.SelectNodes("/gpx/wpt", nsm))
{
Console.WriteLine("***************");
Console.WriteLine("Name: {0}", node.SelectSingleNode("name").InnerText);
Console.WriteLine("Lat: {0}, Lon: {1}", node.Attributes["lat"].Value, node.Attributes["lon"].Value);
Console.WriteLine("CMT: {0}", node.SelectSingleNode("cmt").InnerText);
Console.WriteLine("***************\n");
}
}
catch (Exception ex)
{
Console.WriteLine(ex.StackTrace);
Console.WriteLine(ex.Message);
}
Console.ReadKey();
A takto vypadá soubor, který do toho cpu: <?xml version="1.0" encoding="utf-8"?> <gpx xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instanc..." version="1.0" creator="Groundspeak Pocket Query" xsi:schemaLocation="http://www.topografix.com/GPX/1/0 http://www.topografix.com/GPX/1/0/gpx.xs... http://www.groundspeak.com/cache/1/0 http://www.groundspeak.com/cache/1/0/cac..." xmlns="http://www.topografix.com/GPX/1/0"> <wpt lat="49.401833" lon="16.784167"> <time>1899-12-30T00:00:00.000</time> <name><![CDATA[NAME]]></name> <cmt><![CDATA[Komentar]]></cmt> <desc></desc> </wpt>
</gpx>
|