为了账号安全,请及时绑定邮箱和手机立即绑定

解析XML命名空间节点

解析XML命名空间节点

Go
红颜莎娜 2021-05-20 18:21:53
我对Go来说还比较陌生,但是正在努力完成一项基本任务。我正在使用“ encoding / xml”包解析GPX文件,并具有以下示例xml数据;<gpx creator="StravaGPX" version="1.1" xmlns="http://www.topografix.com/GPX/1/1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd http://www.garmin.com/xmlschemas/GpxExtensions/v3 http://www.garmin.com/xmlschemas/GpxExtensionsv3.xsd http://www.garmin.com/xmlschemas/TrackPointExtension/v1 http://www.garmin.com/xmlschemas/TrackPointExtensionv1.xsd http://www.garmin.com/xmlschemas/GpxExtensions/v3 http://www.garmin.com/xmlschemas/GpxExtensionsv3.xsd http://www.garmin.com/xmlschemas/TrackPointExtension/v1 http://www.garmin.com/xmlschemas/TrackPointExtensionv1.xsd" xmlns:gpxtpx="http://www.garmin.com/xmlschemas/TrackPointExtension/v1" xmlns:gpxx="http://www.garmin.com/xmlschemas/GpxExtensions/v3"> <metadata>  <time>2013-02-16T10:11:25Z</time> </metadata> <trk>  <name>Demo Data</name>  <trkseg>   <trkpt lat="51.6395658" lon="-3.3623858">    <ele>111.6</ele>    <time>2013-02-16T10:11:25Z</time>    <extensions>     <gpxtpx:TrackPointExtension>      <gpxtpx:atemp>8</gpxtpx:atemp>      <gpxtpx:hr>136</gpxtpx:hr>      <gpxtpx:cad>0</gpxtpx:cad>     </gpxtpx:TrackPointExtension>    </extensions>   </trkpt>到目前为止,我能够获得以下几种类型的最基本的信息:type Gpx struct {    Creator string `xml:"creator,attr"`    Time string `xml:"metadata>time"`    Title string `xml:"trk>name"`    TrackPoints []TrackPoint `xml:"trk>trkseg>trkpt"`}type TrackPoint struct {    Lat float64 `xml:"lat,attr"`    Lon float64 `xml:"lon,attr"`    Elevation float32 `xml:"ele"`    Time string `xml:"time"`    Temperature int `xml:"extensions>gpxtpx>atemp"`}我无法解析的地方是TrackPoint.Temperature。我无法正确匹配扩展下的命名空间节点的标记。关于我要去哪儿有什么建议吗?
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 253 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信