/// <summary>
/// 在为shp文件添加字段时,需要注意字段长度不能过10
/// </summary>
/// <param name="pFeatureClass"></param>
/// <param name="pFieldName"></param>
/// <param name="pFieldAliasName"></param>
/// <param name="pFieldType"></param>
/// <returns></returns>
public static int AddFieldToFeatureClass(IFeatureClass pFeatureClass, String pFieldName, String pFieldAliasName, esriFieldType pFieldType)
{
IFields pFields = pFeatureClass.Fields;
if (pFeatureClass.FeatureDataset == null || pFeatureClass.FeatureDataset.Workspace.Type == esriWorkspaceType.esriFileSystemWorkspace)
{
if(pFieldName.Length > 10)
{
MessageBox.Show("本地shp字段长度不能超过10位");
return -1;
}
}
if (pFields.FindField(pFieldName) < 0)
{
//添加两个Field
IFieldsEdit pFieldsEdit = pFields as IFieldsEdit;
IField pField = new Field();
IFieldEdit pFieldEdit = pField as IFieldEdit;
//' 设置字段属性
pFieldEdit.Name_2 = pFieldName;
pFieldEdit.Type_2 = pFieldType;//字段类型
pFieldEdit.AliasName_2 = pFieldAliasName;
pFieldEdit.Editable_2 = true;
IClass pClass = pFeatureClass as IClass;
pClass.AddField(pField);
pFields = pFeatureClass.Fields;//需要重新刷新fields
}
return pFields.FindField(pFieldName);
}
为FeatureClass添加字段
猜你喜欢
转载自blog.csdn.net/u013828625/article/details/89710131
今日推荐
周排行