本文主要对数据导入等里 常用的不同格式数据创建、转换等 进行代码示例。主要用到IFeatureDataConverter.ConvertFeatureClass方法。

代码如下,难度不大,只是个技巧问题:

函数:

private void ConvertFeaCls(IWorkspace workspaceSource, IWorkspace workspaceTar, stringsSorceFeaClsName, string sTarFeaClsName, string sFeaDTName)

        {

            IFeatureClass feaCls = (workspaceSource asIFeatureWorkspace).OpenFeatureClass(sSorceFeaClsName);

            String shapeFieldName = feaCls.ShapeFieldName;

            int shapeFieldIndex = feaCls.FindField(shapeFieldName);

            IField shapeField = feaCls.Fields.get_Field(shapeFieldIndex);

            IGeometryDef geometryDef = shapeField.GeometryDef;

            //create source workspace name  

            IDataset sourceWorkspaceDataset = (IDataset)workspaceSource;

            IWorkspaceName sourceWorkspaceName = (IWorkspaceName)sourceWorkspaceDataset.FullName;

            //create source dataset name  

            IFeatureClassName sourceFeatureClassName = new FeatureClassNameClass();

            IDatasetName sourceDatasetName = (IDatasetName)sourceFeatureClassName;

            sourceDatasetName.WorkspaceName = sourceWorkspaceName;

            sourceDatasetName.Name = sSorceFeaClsName;

            //create target workspace name  

            IDataset tarWorkspaceDataset = (IDataset)workspaceTar;

            IWorkspaceName tarWorkspaceName = (IWorkspaceName)tarWorkspaceDataset.FullName;

            //create target dataset name  

            IFeatureClassName tarFeatureClassName = new FeatureClassNameClass();

            IDatasetName tarDatasetName = (IDatasetName)tarFeatureClassName;

            tarDatasetName.WorkspaceName = tarWorkspaceName;

            tarDatasetName.Name = sTarFeaClsName;

            IFeatureDatasetName tarFeatureDatasetName = new FeatureDatasetNameClass();

            (tarFeatureDatasetName as IDatasetName).WorkspaceName = tarWorkspaceName;

            (tarFeatureDatasetName as IDatasetName).Name = sFeaDTName;

            if (string.IsNullOrEmpty(sFeaDTName))

            {

                tarFeatureDatasetName = null;

            }

            IFeatureDataConverter featureDataConverter = new FeatureDataConverterClass();

            featureDataConverter.ConvertFeatureClass(sourceFeatureClassName, null, tarFeatureDatasetName, tarFeatureClassName, geometryDef, feaCls.Fields, "", , );    // Check for errors.

        }

调用:

 IWorkspaceFactory2 workspaceFactory = new ShapefileWorkspaceFactoryClass() asIWorkspaceFactory2;

            IWorkspace workspace = workspaceFactory.OpenFromFile(@"E:\jhl", );

            IFeatureWorkspace featureWorkspace = (IFeatureWorkspace)workspace;

            IFeatureClass featureClass = featureWorkspace.OpenFeatureClass(Functions.g_ROAD);

            IWorkspace workspace2 = workspaceFactory.OpenFromFile(@"E:\", );

            DeleteShapeFileIFExist(@"E:\", "test6");

            ConvertFeaCls(workspace, workspace2, Functions.g_ROAD,  "test6",string.Empty);

gis数据格式转换(数据导入)ConvertFeaCls的更多相关文章

  1. SQL SERVER 与ACCESS、EXCEL的数据导入导出转换

    * 说明:复制表(只复制结构,源表名:a 新表名:b)      select * into b from a where 1<>1 * 说明:拷贝表(拷贝数据,源表名:a 目标表名:b) ...

  2. Mysqlbinlog工具及导出数据并转换编码导入

    2014 - binlog是通过记录二进制文件方式来备份数据,然后在从二进制文件将数据恢复到某一时段或某一操作点. 1.使用mysqlbinlog工具来恢复 Mysqlbinlog日志如何开启? 在m ...

  3. python pandas数据分析基础入门2——(数据格式转换、排序、统计、数据透视表)

    //2019.07.18pyhton中pandas数据分析学习——第二部分2.1 数据格式转换1.查看与转换表格某一列的数据格式:(1)查看数据类型:某一列的数据格式:df["列属性名称&q ...

  4. [Asp.net]常见数据导入Excel,Excel数据导入数据库解决方案,总有一款适合你!

    引言 项目中常用到将数据导入Excel,将Excel中的数据导入数据库的功能,曾经也查找过相关的内容,将曾经用过的方案总结一下. 方案一 NPOI NPOI 是 POI 项目的 .NET 版本.POI ...

  5. CDH离线数据导入solr:利用MapReduceIndexerTool将json文件批量导入到solr

    场景描述:前段时间,将实时数据通过kafka+flume+morphline的方式接入到solr中.新进来的数据已经可以在solr中看到了,但是以前的历史数据还没有导入solr. CDH提供利用Map ...

  6. rapidminer 数据导入及几个算子简单应用

    rapidminer 数据导入及几个算子简单应用 一. 数据集选择 本次实验选择的数据集为: bank-data.csv 其中有600条数据 结构如下图: 二.数据集文件格式转换 Rapidminer ...

  7. GIS数据格式:Coverage

    转自:http://www.cnblogs.com/w2william/archive/2009/10/15/1583954.html 我之前做了一个模块,基本实现了ArcCatalog中左边树状结构 ...

  8. GIS数据格式:Shapefile

    转自:http://lab.osgeo.cn/2449.html Shapefile是ESRI提出的数据格式,随着ArcView GIS 3.x发布,属于简单要素类.Shapefile由于其数据结构简 ...

  9. 将ROS中的/sensor_msgs/NavSatFix数据导入google earth显示轨迹

    将ros中的gps_msg数据导入google earth显示轨迹 [TOC] 1. 获取GPS数据 将ros中发布的gps topic输出到文本中 rostopic echo -p /gpsData ...

随机推荐

  1. PHP实现堆排序

    经验 工作了,面试我工作这家公司时被技术面打击得不行,因为自己的数据结构等基础学得实在太差,虽然原来是想做设计师的说...不过看在PHP写得还凑合的份上能来实习了,但还是决心恶补一下基础. 其实自己之 ...

  2. 如何穿越到android底层

    对于android开发,实际上大部分工作都是在应用层,但为了体现"技术含量",以及"知其所以然",以便在遇到问题是不至于束手无策.因此有必要了解底层的工作机制. ...

  3. stm32定时器实现60秒定时秒表

    #include "led.h" #include "delay.h" #include "key.h" #include "sy ...

  4. [WPF系列]-数据邦定之DataTemplate 对分层数据的支持

    到目前为止,我们仅讨论如何绑定和显示单个集合. 某些时候,您要绑定的集合包含其他集合. HierarchicalDataTemplate 类专用于 HeaderedItemsControl 类型以显示 ...

  5. 【WPF系列】基础学习-WPF架构概览

    引言 WPF从.net framewok3.0加入以来,经历了很多跟新.每次更新都给用户带来了新的功能或者优化性能.下面我们首先看下WPF再.netFramework中的位置,接着介绍下WPF的架构框 ...

  6. sass入门

    SASS是一种CSS的开发工具,提供了许多便利的写法,大大节省了设计者的时间,使得CSS的开发,变得简单和可维护. SASS 官网介绍: sass is the most mature(成熟的),st ...

  7. 数据库SQL基本操作

    1.查询表结构 desc 表名 2.显示当前连接用户 show user 3.查看系统拥有哪些用户 select * from all_users; 4.查询当前用户下所有对象 select * fr ...

  8. struts2中的OGNL详解

    先了解一下OGNL的概念 OGNL的全名称Object Graph Navigation Language.全称为对象图导航语言,是一种表达式语言.使用这种表达式语言,你可以通过某种表达式语法,存取J ...

  9. 嵌入式Linux驱动学习之路(二十三)NAND FLASH驱动程序

    NAND FLASH是一个存储芯片. 在芯片上的DATA0-DATA7上既能传输数据也能传输地址. 当ALE为高电平时传输的是地址. 当CLE为高电平时传输的是命令. 当ALE和CLE都为低电平时传输 ...

  10. flex引起height:100%失效

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...