KML 转 GeoJSON 转换器

在你的浏览器中即时将 KML 转为 GeoJSON(也能将 GeoJSON 转回 KML)。你的地图数据始终留在你的设备上。

你的 KML 和 GeoJSON 在你的浏览器本地完成转换,绝不会被上传,因此私有的勘测点、路线和边界始终留在你的设备上。

需要标注一个坐标?试试坐标地图查看器。

关于 KML 转 GeoJSON

这款 KML 转 GeoJSON 转换器能把你从 Google Earth、My Maps 或某个 GIS 工具导出的 KML,变成 Leaflet、Mapbox、OpenLayers 等地图库可以直接读取的标准 GeoJSON。当你需要把数据重新在 Google Earth 中打开时,切换方向即可从 GeoJSON 转为 KML。点、线、面及其地标名称和描述都会一并保留,而 GeoJSON 一侧会经过美化,便于浏览和放入代码。粘贴你的标记或用文件选择器加载文件,然后复制结果或以正确的扩展名下载。它专为 GIS 分析师、网页地图开发者,以及任何在不同格式间搬运地理数据的人而打造。每一次转换都完全在你的浏览器中运行,因此你的坐标和地名都在本地处理,绝不离开你的设备。

功能特性

如何使用 KML 转 GeoJSON

  1. 选择方向:KML → GeoJSON 或 GeoJSON → KML。
  2. 将你的 KML 或 GeoJSON 粘贴到输入框,或点击「选择文件」加载一个文件。
  3. 在右侧面板中查看转换后的输出。
  4. 点击「复制」获取结果,或下载为 data.geojson 或 data.kml。

示例

输入

<kml xmlns="http://www.opengis.net/kml/2.2">
  <Document>
    <Placemark>
      <name>Eiffel Tower</name>
      <Point><coordinates>2.2945,48.8584,0</coordinates></Point>
    </Placemark>
  </Document>
</kml>

输出

{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "geometry": { "type": "Point", "coordinates": [2.2945, 48.8584, 0] },
      "properties": { "name": "Eiffel Tower" }
    }
  ]
}

一个 KML 地标 Point 变成一个 GeoJSON Feature,其名称保留在 properties 中。

常见错误与故障排除

常见问题

我能转换 KMZ 文件吗?
不能直接转换。KMZ 是一个 ZIP 压缩包,内含一个 KML 文件(通常是 doc.kml)以及若干资源。请先解压——重命名为 .zip 后解压,或从 Google Earth 导出纯 KML——然后在此粘贴或加载该 KML。
KML 的样式和图标会在 GeoJSON 中被保留吗?
不会。GeoJSON 只描述几何与属性,因此 KML 的 <Style>、<IconStyle> 和颜色元素没有对应项,会被丢弃。几何、地标名称和描述会被保留;请在你的地图库中重新应用视觉样式。
支持哪些几何类型?
KML 中的 Point、LineString、Polygon 和 MultiGeometry 会映射到 GeoJSON 中的 Point、LineString、Polygon 及其对应的 Multi* 类型;将 GeoJSON 转回 KML 时反向同样有效。
GeoJSON → KML 会为每个要素生成一个 Placemark 吗?
会。每个 GeoJSON Feature 都会连同其几何变成一个 KML <Placemark>,而要素 properties 中的 name 或 description 会被写入地标,以便在 Google Earth 中正确标注。
我转换地图数据时,它会被上传吗?
不会。KML 转 GeoJSON 的转换完全在你的浏览器中运行,因此你的坐标和地名都在本地处理,绝不离开你的设备。

相关工具

全部 ArrayKit 工具