보낸 샘플은 notepad ++와 같은 편집기를 사용하여 파일을 수동으로 분할 할 수 있음을 보여줍니다.
1) 각 청크마다 헤더를 만듭니다.
{"type":"FeatureCollection","features":[
2) 헤더 장소 후 많은 기능 :
{"geometry": {"type": "Point", "coordinates": [-103.422819, 20.686477]}, "type": "Feature", "id": "SG_3TspYXmaZcMIB8GxzXcayF_20.686477_-103.422819@1308163237", "properties": {"website": "http://www.buongiorno.com", "city": "M\u00e9xico D.F. ", "name": "Buongiorno", "tags": ["mobile", "vas", "community", "social-networking", "connected-devices", "android", "tablets", "smartphones"], "country": "MX", "classifiers": [{"category": "Professional", "type": "Services", "subcategory": "Computer Services"}], "href": "http://api.simplegeo.com/1.0/features/SG_3TspYXmaZcMIB8GxzXcayF_20.686477_-103.422819@1308163237.json", "address": "Le\u00f3n Tolstoi #18 PH Col. Anzures", "owner": "simplegeo", "postcode": "11590"}},
3) 청크로 마무리합니다 :
]}
편집-다음은 정의 된 크기의 조각 (기능 수)으로 파일을 분할하는 파이썬 코드입니다.
import sys
class JsonFile(object):
def __init__(self,file):
self.file = open(file, 'r')
def split(self,csize):
header=self.file.readline()
number=0
while True:
output=open("chunk %s.geojson" %(number),'w')
output.write(header)
number+=1
feature=self.file.readline()
if feature==']}':
break
else:
for i in range(csize):
output.write(feature)
feature=self.file.readline()
if feature==']}':
output.write("]}")
output.close()
sys.exit("Done!")
output.write("]}")
output.close()
if __name__=="__main__":
myfile = JsonFile('places_mx.geojson')
myfile.split(2000) #size of the chunks.