有没有办法将GeoPoints导出到GPX文件中?
@Override public void onLocationChanged(android.location.Location location) { lat = location.getLatitude(); lon = location.getLongitude(); currGeo = new GeoPoint((int)(lat*1e6),(int)(lon*1e6)); //Store GeoPoint to GPX file }
我读过How to parse and plot gpx file has an android MapView,但我正在寻找一个更简单的解决方案.
解决方法
@H_403_9@ 如果您只想从地理列表列表生成GPX文件,最简单的方法是将字符串压缩到文件中.不知道GPX的确切格式,我正在制作很多细节,但你应该知道你正在生成的格式.例如,在伪代码中:
// open file handle OutputStream fout = getFileOutputStream("gpxFile.gpx"); fout.write("<gpx>"); for (GeoPoint gp : listOfGeoPoints) { fout.write("<gpxPoint>" + getGeoPointAsStringForFile(gp) + "</gpxPoint>"); } fout.write("</gpx>"); // close file,cleanup,etc
这将要求您实现getFIleOutputStream()方法和getGeoPointAsStringForFile()方法,但是您知道您的目标是什么格式,这将让您只需创建文件而无需经历大量的箍.
>应该注意的是,这是非常脆弱的,所以在你上线之前以正确的方式做到这一点,但这是一个简短的版本快速修复.