Tôi đã phải giải quyết vấn đề tương tự ngày hôm nay, vì vậy đây là câu trả lời của tôi, đưa ra một giải pháp hoàn chỉnh.
Tôi có một lineWKT.csv
tệp được lưu trữ trong F:\Data\
thư mục, với dữ liệu như thế này:
id,gm
0,"LINESTRING (30 10 0, 10 30 0, 40 40 5)"
Tôi có một test.vrt
tập tin như thế này:
<OGRVRTDataSource>
<OGRVRTLayer name="lineWKT">
<SrcDataSource>F:\Data\lineWKT.csv</SrcDataSource>
<GeometryType>wkbLineString25D</GeometryType>
<LayerSRS>PROJCS["WGS_1984_Lambert_Conformal_Conic",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Lambert_Conformal_Conic"],PARAMETER["False_Easting",1000000.0],PARAMETER["False_Northing",1000000.0],PARAMETER["Central_Meridian",85.875],PARAMETER["Standard_Parallel_1",24.625],PARAMETER["Standard_Parallel_2",27.125],PARAMETER["Latitude_Of_Origin",25.8772525],UNIT["Meter",1.0]]</LayerSRS>
<GeometryField encoding="WKT" field='gm' > </GeometryField >
</OGRVRTLayer>
</OGRVRTDataSource>
Với cấu hình này, tôi có thể tạo một shapefile bằng lệnh sau:
ogr2ogr line.shp test.vrt