其他分享
首页 > 其他分享> > Android Studio GPX文件的解析(总和)

Android Studio GPX文件的解析(总和)

作者:互联网

声明:此博客相当于一个内容整合博客,总和实现我了想要的对GPX文件的操作,以下如果有侵权等请联系我进行删除。

一.

将一个GPX文件放到项目的资源文件中,然后通过对资源文件的访问将GPX文件数据解析出来。

1.GPX文件的放置,如图:

2.GPX文件的解析

参照博客为:

JAVA写入与读取GPX文件工具类_leavesloves的博客-CSDN博客

上面这个是我找到的GPX文件解析的博客,这位博主大佬将GPX文件的解析的全部类都写好了,然后解析GPX文件的参数接口为文件地址。

public GpxReader(String path){......}

因此,接下来我们要做的就是怎么通过文件地址的方式访问 assets 文件夹下的GPX文件资源。
参照博客为:

Android 获取assets文件夹下面的文件路径_六月的雨123的博客-CSDN博客_android获取assets文件路径

这位博主大佬使用先把文件复制到缓存中,然后再获取文件的路径的思路,实现了通过地址路径的方式对 assets 文件夹下的资源进行访问。

因此,总和上面两个大佬的方法,就能实现对GPX文件的数据解析了。

二.

        对于GPX文件的解析,有一个GPXParser的方法类,我们可以将gpxParser.jar 添加到工程。然后,使用主函数GPXParser 进行操作:

GPXParser的介绍和资源包的下载网站,网站中也介绍了怎么使用和获取GPX文件相关数据:

GPXParser - User guide

将得到的 jar 包复制到libs文件夹下,右击添加到工程。

 GPXParser的使用:

GPXParser p = new GPXParser();
        FileInputStream in = null;
        try {
            in = new FileInputStream("one.gpx");
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
        try {
            GPX gpx = p.parseGPX(in);
            //gpx的相关操作
            gpx.getWaypoints();
            gpx.getTracks();
            gpx.getRoutes();
        } catch (ParserConfigurationException e) {
            e.printStackTrace();
        } catch (SAXException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

       然后问题来了,使用gpx.getWaypoints(),gpx.getTracks(),gpx.getRoutes();我只得到了一个节点数的数据,并没有得到节点的其他详细数据(比如:经纬度,高度等),我也不知道是自己使用上的问题还是啥,如果有人知道,麻烦指教一下。

       综上所述,因此我还是使用了 一  中的方法成功对GPX文件进行了解析。

标签:GPX,文件,博客,gpx,GPXParser,Studio,Android,解析
来源: https://blog.csdn.net/qq_46574738/article/details/123578932