【发布时间】:2012-10-23 07:10:02
【问题描述】:
我想用 2 个点创建一个 shapefile(一条线)。
我有以下脚本:
import ogr, sys, os
line=ogr.Geometry(ogr.wkbLineString)
line.AddPoint(10,10)
line.AddPoint(20,20)
driver=ogr.GetDriverByName('ESRI Shapefile')
ds=driver.CreateDataSource('C:\test.shp')
layer=ds.CreateLayer('test', geom_type=ogr.wkbLineString)
fieldDefn=ogr.FieldDefn('id', ogr.OFTInteger)
layer.CreateField(fildDefn)
featureDefn=layer.GetLayerDefn()
feature=ogr.Feature(featureDefn)
feature.SetGeometry(line)
feature.SetField('id',1)
layer.CreateFeature(feature)
我有两个错误..
"错误1:创建文件失败。shp文件。 错误 4:无法打开 Shapefile"
有人知道问题出在哪里吗? 谁能帮我? 非常感谢
【问题讨论】:
-
如果您想知道为什么您的 id 字段不起作用:您创建字段的位置有一个错字:
layer.CreateField(fildDefn)应该是layer.CreateField(fieldDefn)