属性表的创建及记录的添加
2015-08-14 15:43
357 查看
1、创建新表
/// <summary> /// 创建一个只有ZID的数据表 /// </summary> /// <param name="path">属性表文件路径(包括属性名)</param> /// <returns></returns> static public ITable CreateTable(string path) { string _TablePath = Path.GetDirectoryName(path); string _TableName = Path.GetFileName(path); IWorkspaceFactory pWks = new ShapefileWorkspaceFactoryClass(); IFeatureWorkspace pFwk = pWks.OpenFromFile(_TablePath, 0) as IFeatureWorkspace; //添加字段 IField pField = new FieldClass(); IFieldEdit pFieldEdit = pField as IFieldEdit; pFieldEdit.Name_2 = "ZID";//字段名称 pFieldEdit.Type_2 = esriFieldType.esriFieldTypeInteger;//字段类型 //用于添加表中的必要字段 ESRI.ArcGIS.Geodatabase.IObjectClassDescription objectClassDescription = new ESRI.ArcGIS.Geodatabase.ObjectClassDescriptionClass(); IFields pTableFields = objectClassDescription.RequiredFields; IFieldsEdit pFieldsEdit = pTableFields as IFieldsEdit; pFieldsEdit.AddField(pField); ITable pTable = pFwk.CreateTable(_TableName, pTableFields, null, null, ""); return pTable; }
[/code]
2、向已有表中添加字段
ITable pTable = CreateTable(path); IField pFieldValue = new FieldClass(); IFieldEdit pFieldEdit = pFieldValue as IFieldEdit; pFieldEdit.Name_2 = "面积比"; pFieldEdit.Type_2 = esriFieldType.esriFieldTypeDouble; pTable.AddField(pFieldValue);
3、设置属性值(增)
IRow pRow = pTable.CreateRow(); pRow.set_Value(1, value1); pRow.set_Value(2, value2); pRow.Store();
相关文章推荐
- D - A very hard Aoshu problem----(2015 summer training #12(Team_Qualifying))
- maven使用小经验
- 基于Android 4.2.2的Account Manager源代码分析学习:设备上帐号类型列表的获取
- centos 下设置mysql字符集
- Java 8 类型转换及改进
- Android基于mAppWidget实现手绘地图(十)–在放大前后执行一些操作
- 用imageswitcher和gallery实现壁纸切换效果
- linux环境变量设置方法总结(PATH/LD_LIBRARY_PATH)
- python2.7学习笔记(2) ——数据类型和变量
- spring常用注解
- spring-boot 初试
- HDU 1017 A Mathematical Curiosity (枚举水题)
- 64 Minimum Path Sum
- 程序员头条
- CentOS查看和修改MySQL字符集
- 苹果input点击页面稍微变大的问题
- Hdu 5384 Danganronpa (AC自动机模板)
- [转]Java transient关键字
- VC++ 用setsockopt()来控制recv()与send()的超时
- Yahoo!军规详解