ArcGISEngine创建和删除Shp文件
来源:互联网 发布:淘宝小店如何推广 编辑:程序博客网 时间:2024/06/05 08:52
1、创建Shp文件
IFeatureWorkspace接口的CreateFeatureClass()方法可以产生一个要素类,该要素类被直接放置在工作空间中。
private void CreateShp() { //打开shp工作空间 string fileName = "Some";//shp文件名 string filePath = @"E:\HiOS\TestShp";//shp文件位置 IWorkspaceFactory pWorkspaceFactory = new ShapefileWorkspaceFactory();//文件夹 //IWorkspaceFactory pWorkspaceFactory = new AccessWorkspaceFactoryClass();//Access格式的个人地理数据库 IWorkspace pWorkspace = pWorkspaceFactory.OpenFromFile(filePath, 0); IFeatureWorkspace pFeatureWorkspace = pWorkspace as IFeatureWorkspace; //设置geometry definition IGeometryDef pGeometryDef = new GeometryDefClass(); IGeometryDefEdit pGeometryDefEdit = pGeometryDef as IGeometryDefEdit; pGeometryDefEdit.GeometryType_2 = esriGeometryType.esriGeometryPolyline;//点、线、面 pGeometryDefEdit.SpatialReference_2 = axMapControl1.SpatialReference; //建立Shp文件的字段集 IFields pFields = new FieldsClass(); IFieldsEdit pFieldsEdit = pFields as IFieldsEdit; IField pField = new FieldClass(); IFieldEdit pFieldEdit = pField as IFieldEdit; //建立shape(几何)字段 pFieldEdit.Name_2 = "Shape"; pFieldEdit.Type_2 = esriFieldType.esriFieldTypeGeometry; pFieldEdit.GeometryDef_2 = pGeometryDef; pFieldsEdit.AddField(pField); //新建ObjectID字段 pField = new FieldClass(); pFieldEdit = pField as IFieldEdit; pFieldEdit.Name_2 = "ObjectID"; pFieldEdit.AliasName_2 = "id"; pFieldEdit.Type_2 = esriFieldType.esriFieldTypeSmallInteger; pFieldsEdit.AddField(pField); //新建Name字段 pField = new FieldClass(); pFieldEdit = pField as IFieldEdit; pFieldEdit.Length_2 = 32; pFieldEdit.Name_2 = "Name"; pFieldEdit.AliasName_2 = "Name"; pFieldEdit.Type_2 = esriFieldType.esriFieldTypeString; pFieldsEdit.AddField(pField); //最后创建Shp文件 IFeatureClass pFeatureClass = pFeatureWorkspace.CreateFeatureClass(fileName + ".shp", pFields, null, null, esriFeatureType.esriFTSimple, "Shape", ""); }
在创建字段的时候,会默认创建FID字段。显示声明字段类型为esriFieldType.esriFieldTypeOID,该字段不会被创建。
2、删除shp文件
private void DeleteShp() { //打开shp工作空间 string fileName = "Some";//shp文件名 string filePath = @"E:\HiOS\TestShp";//shp文件位置 IWorkspaceFactory pWorkspaceFactory = new ShapefileWorkspaceFactory();//文件夹 //IWorkspaceFactory pWorkspaceFactory = new AccessWorkspaceFactoryClass();//Access格式的个人地理数据库 IWorkspace pWorkspace = pWorkspaceFactory.OpenFromFile(filePath, 0); IFeatureWorkspace pFeatureWorkspace = pWorkspace as IFeatureWorkspace; IFeatureClass pFeatureClass = pFeatureWorkspace.OpenFeatureClass(fileName);//fileName为文件名(不包含路径) IDataset pFeaDataset = pFeatureClass as IDataset; pFeaDataset.Delete(); }
OpenFeatureClass()方法可用于打开一个已经存在的要素类。
0 0
- ArcGISEngine创建和删除Shp文件
- ArcGISEngine加载Shp文件到MapControl控件
- 创建shp文件
- ArcEngine,delphi创建shp文件
- Arcgis engnie 创建SHP文件
- pyshp创建shp点文件
- arcgisEngine shp出现乱码的问题
- 彻底删除shp文件有关文件
- AE CreateFeatureClass 创建shp. 删除shp. 向shp中添加要素
- 文件创建和删除
- 创建和删除文件
- 动态添加、删除图层shp文件
- 创建文件和删除文件
- node-gdal实践-创建shp文件
- GDAL矢量(.shp)文件读写与创建
- 文件的创建和删除
- linux文件创建和删除
- linux创建和删除文件
- [总结]Genymotion运行AVD报显卡不支持OpenGL错误
- 机房收费系统——MSHFlexGrid
- Java 7之集合类型第4篇 - HashMap
- App自适应draw9patch不失真背景
- ASCII码对照表
- ArcGISEngine创建和删除Shp文件
- spring mail
- UNIX基本文件操作之查看文件内容
- 配置国际化全局资源文件、输出国际化信息
- 50 道 Java 线程面试题
- ToolBar控件的使用
- 解决IllegalStateException: Can not perform this action after onSaveInstanceState
- python-学习-打印
- Apache 体系结构