Android 如何获取kml文件的坐标

Android 如何获取kml文件的坐标,android,gps,kml,Android,Gps,Kml,我想接收kml文件中点的坐标。 我创建了一个接收坐标的对象,但找不到如何从文件中获取坐标 迄今为止所做工作的一个例子: (点数是132,但我缩短了它,以便能够在这里展示。) Kml文件: <LinearRing> <coordinates> 34.79991805485883,32.070779943443,0 34.799829164854,32.070806

我想接收kml文件中点的坐标。 我创建了一个接收坐标的对象,但找不到如何从文件中获取坐标

迄今为止所做工作的一个例子:
(点数是132,但我缩短了它,以便能够在这里展示。)

Kml文件:

<LinearRing>
                <coordinates>
                    34.79991805485883,32.070779943443,0
                    34.799829164854,32.07080649750882,0
                    34.79971023480251,32.07083335300256,0
                    34.79959122858838,32.07086022634235,0
                    34.79947508289758,32.07091343448649,0
                    34.79935881388468,32.07096669690968,0
                    34.79923664471844,32.07096729415576,0
                    34.79912177286835,32.07104658864036,0
                </coordinates>
<LinearRing>
代码不起作用。
非常感谢您的帮助。

首先确保您得到了包含坐标的字符串。
(位于
标记之间的文本)
然后使用

String[] coords3d = coordStr.split(" ");
拆分为一组lon、lat、althip字符串。 在该数组上循环并使用

String[] coordLatLonAltitude = coord.split(",");

拆分为单独的纬度、经度和海拔值。

首先确保获得包含坐标的字符串。
List<LatLng> points = new ArrayList<>();
for (KmlContainer c : kmlLayer.getContainers()) {
    for (KmlPlacemark p : c.getPlacemarks()) {
        KmlGeometry g = p.getGeometry();
        if (g.getGeometryType().equals("LineString")) {
            points.addAll((Collection<? extends LatLng>) g.getGeometryObject());
        }
    }
}
(位于
标记之间的文本)
然后使用

String[] coords3d = coordStr.split(" ");
拆分为一组lon、lat、althip字符串。 在该数组上循环并使用

String[] coordLatLonAltitude = coord.split(",");
拆分为单独的纬度、经度和海拔值。

列出点=新的ArrayList();
List<LatLng> points = new ArrayList<>();
for (KmlContainer c : kmlLayer.getContainers()) {
    for (KmlPlacemark p : c.getPlacemarks()) {
        KmlGeometry g = p.getGeometry();
        if (g.getGeometryType().equals("LineString")) {
            points.addAll((Collection<? extends LatLng>) g.getGeometryObject());
        }
    }
}
对于(KmlContainer c:kmlLayer.getContainers()){ 对于(KmlPlacemark p:c.getPlacemarks()){ KmlGeometry g=p.getGeometry(); 如果(g.getGeometryType().equals(“LineString”)){ addAll((集合
List points=new ArrayList();
对于(KmlContainer c:kmlLayer.getContainers()){
对于(KmlPlacemark p:c.getPlacemarks()){
KmlGeometry g=p.getGeometry();
如果(g.getGeometryType().equals(“LineString”)){

加点((收集问题是我无法从kml文件中获取数据。之后,我知道该怎么做。kml就像xml。如果你不能解析xml文件,你就不能解析kml。你有一个kml格式的文本文件。在你的程序中搜索或学习如何解析xml文件。或者如果你找到一个现成的kmlParser软件,它会返回一个kml对象。我问了一个问题,因为我找不到答案。学习如何读取XML文件;谷歌“解析XML java”问题是我无法从kml文件中获取数据。之后我知道该怎么做。kml就像xml。如果你不能解析xml文件,你就不能解析kml。你有一个kml格式的文本文件。在你的程序中搜索或学习如何解析xml文件。或者如果你找到一个现成的kmlParser软件,它会返回一个kml对象我问了一个问题,因为我找不到答案。学习如何读取XML文件;谷歌“解析XML java”