GDAL kütüphanesinin bir parçası olan OGR / GDAL'yi kullanmanızı tavsiye ederim . OGR, bir XML dosyası aracılığıyla belirtime izin veren sanal bir formatı destekler . Excel çalışma sayfanızı bir CSV'ye dönüştürürseniz, verilere erişmek için bir VRT oluşturabilirsiniz.
Böyle bir şeyin olduğunu varsayarsak example.csv
:
Lat,Long,Year,Name
34.0,-120.0,2010-05-01,Off Santa Rosa Island
VRT'yi example.vrt
aşağıdaki gibi oluşturabilirsiniz :
<OGRVRTDataSource>
<OGRVRTLayer name="example">
<SrcDataSource>example.csv</SrcDataSource>
<GeometryType>wkbPoint</GeometryType>
<LayerSRS>WGS84</LayerSRS>
<GeometryField encoding="PointFromColumns" x="Long" y="Lat"/>
</OGRVRTLayer>
</OGRVRTDataSource>
GDAL 1.7'den başlayarak, <Field>
içindeki öğeyi kullanarak, nitelik alanlarının veri türlerini ek olarak belirtebilirsiniz <OGRVRTLayer>
:
<Field name="date" src="Year" type="Date" />
Shapefiles dosyasının , veri türlerinde Excel'den daha az esnekliğe sahip olan DBASE IV biçimindeki depo özniteliklerini unutmayın . VRT dosyanızı belirttikten sonra, verileri bir Shapefile dosyasına dönüştürmek için normal OGR araç zincirini kullanabilirsiniz:
ogr2ogr -f "ESRI Shapefile" example.shp example.vrt
Maalesef, # 4 mümkün değil - şekil dosyası özelliği, tek bir çıkıntıya izin veriyor (burada example.prj
son adımdan sonra görüntülenebilir ).