默认头像
fyl
路人甲
路人甲
  • 注册日期2004-05-12
  • 发帖数43
  • QQ
  • 铜币363枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:2181回复:4

C#如何创建字段?(急急急)

楼主#
更多 发布于:2005-08-22 10:21
想新建一个shape文件,不知如何创建字段
喜欢0 评分0
默认头像
路人甲
路人甲
  • 注册日期2006-09-01
  • 发帖数2
  • QQ
  • 铜币105枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于:2006-10-10 09:13

IFieldEdit pField=new FieldClass();

         

           
  pField.Name_2 ="hjh";
  pField.Type_2  = esriFieldType.esriFieldTypeString;
  pField.Length_2  = 50;
  pTable.AddField(pField);

举报 回复(0) 喜欢(0)     评分
默认头像
fyl
路人甲
路人甲
  • 注册日期2004-05-12
  • 发帖数43
  • QQ
  • 铜币363枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2005-08-24 08:52

可在c#中pFieldEdit pFieldsEdit等提示属性是只读的,不能赋值

举报 回复(0) 喜欢(0)     评分
默认头像
路人甲
路人甲
  • 注册日期2003-07-28
  • 发帖数384
  • QQ
  • 铜币555枚
  • 威望0点
  • 贡献值0点
  • 银元0个
3楼#
发布于:2005-08-23 13:49

俺给你个代码:

Public Function CreateShapefile(sPath As String, sName As String, sSpatial As ISpatialReference) As IFeatureClass  ' 名称不要加.shp后缀  
  Dim pFWS As IFeatureWorkspace
  Dim pWorkspaceFactory As IWorkspaceFactory
  Set pWorkspaceFactory = New ShapefileWorkspaceFactory
  Set pFWS = pWorkspaceFactory.OpenFromFile(sPath, 0)
 
  Dim pFields As IFields
  Dim pFieldsEdit As IFieldsEdit
  Set pFields = New Fields
  Set pFieldsEdit = pFields
 
  Dim pField As iField
  Dim pFieldEdit As IFieldEdit
 
  Set pField = New Field
  Set pFieldEdit = pField
  pFieldEdit.name = "Shape"
  pFieldEdit.Type = esriFieldTypeGeometry
 
  Dim pGeomDef As IGeometryDef
  Dim pGeomDefEdit As IGeometryDefEdit
  Set pGeomDef = New GeometryDef
  Set pGeomDefEdit = pGeomDef

  With pGeomDefEdit

     .GeometryType = esriGeometryPolygon
     Set .SpatialReference = sSpatial ' New UnknownCoordinateSystem

  End With

  Set pFieldEdit.GeometryDef = pGeomDef
  pFieldsEdit.AddField pField
 
  Set pField = New Field
  Set pFieldEdit = pField

  With pFieldEdit

     .length = 30
     .name = "MiscText"
     .Type = esriFieldTypeString

  End With

  pFieldsEdit.AddField pField
 
  Dim pFeatClass As IFeatureClass
  Set pFeatClass = pFWS.CreateFeatureClass(sName, pFields, Nothing, _
     Nothing, esriFTSimple, "Shape", "")
                                           
  Set CreateShapefile = pFeatClass

End Function

举报 回复(0) 喜欢(0)     评分
默认头像
fyl
路人甲
路人甲
  • 注册日期2004-05-12
  • 发帖数43
  • QQ
  • 铜币363枚
  • 威望0点
  • 贡献值0点
  • 银元0个
4楼#
发布于:2005-08-23 12:47

自己顶一下

举报 回复(0) 喜欢(0)     评分
默认头像

返回顶部