最外层添加 "type": "FeatureCollection",
features 中添加 "type": "Feature",
geometry 中添加 "type": "Polygon",
rings 改为 coordinates
attributes 改为 properties
代码
# -*- coding: UTF-8 -*-
import json
def shp_2_gd_geo(name):
with open(name, 'r', encoding='utf8')as fp:
json_data = json.load(fp)
# print('这是文件中的json数据:', json_data)
print('这是读取到文件数据的数据类型:', type(json_data))
# 最外层添加 "type":"FeatureCollection",
json_data.update({"type": "FeatureCollection"})
for feature in json_data['features']:
# features 中添加 "type":"Feature",
feature["type"] = "Feature"
# features → attributes改为 properties
feature["properties"] = feature.pop("attributes")
# features → geometry 中添加 "type":"Polygon",
feature["geometry"]["type"] = "Polygon"
# features → geometry → rings 改为 coordinates
feature["geometry"]["coordinates"] = feature["geometry"].pop("rings")
print(json_data)
f = open(name + '1.json', 'w', encoding='UTF-8')
f.write(json.dumps(json_data, ensure_ascii=False))
f.close()
if __name__ == '__main__':
shp_2_gd_geo('现状.json')