1、插入

/// <summary>

///向featureclass中批量插入features ,批量插入features,用buffer的方法,要比循环一个个Store的方法快

///</summary>

/// <param name="pFeatureClass">操作数据所在的IFeatureClass</param>

private void InsertFeatures( IFeatureClass pFeatureClass , List< IGeometry> pGeos )

{

  IFeatureBuffer pFeatBuf = pFeatureClass.CreateFeatureBuffer();

  IFeature pFeat = pFeatBuf;

  IFeatureCursor pFeatCur= pFeatureClass.Insert(true);

  for(int i = 0 ;i< pGeos.Count ;i++)

  {

  pFeat.Shape = pGeos(i);

  pFeatCur.InsertFeature(pFeatBuf);

  //避免一次flush,导致速度过慢

  if (i Mod 100 == 0 )

  {

    pFeatCur.Flush()

  }

  pFeatCur.Flush()

}

2、拷贝

/// <summary>

///复制一个IFeatureClass中的要素到另外一个当中

/// </summary>

/// <param name="pFromFeatureClass">源数据所在的IFeatureClass</param>       

/// <param name="pToFeatureClass">目标数据所在的IFeatureClass</param>

private void CopyFeatureClass(IFeatureClass pFromFeatureClass, IFeatureClass pToFeatureClass)

{

  try {

    IFeatureCursor pFromFeatureCursor = pFromFeatureClass.Search(null, false);

    IFeatureCursor pToFeatureCursor = pToFeatureClass.Insert(true);

    IFeatureBuffer pFeatureBuffer = pToFeatureClass.CreateFeatureBuffer();

    IFeature pFromFeature = pFromFeatureCursor.NextFeature();

    while (pFromFeature != null)

    {

      int IndexShape = pFeatureBuffer.Fields.FindField("Shape");

      pFeatureBuffer.set_Value(IndexShape, pFromFeature);

      pFeatureBuffer.Shape = pFromFeature.Shape;

      pToFeatureCursor.InsertFeature(pFeatureBuffer);

      pFromFeature = pFromFeatureCursor.NextFeature();

      pFeatureBuffer = pToFeatureClass.CreateFeatureBuffer();

    }

        pToFeatureCursor.Flush();

  }

  catch (Exception ex)

  {

    throw ex;

  }

}

3、删除

///<summary>删除某featurelayer中所有feature

/// 该方法可以给一个queryfilter,进行删除符合条件的Ifeatures///</summary>

/// <param name="pLayer ">:操作的图层</param>

Private void DeleteAllFeatures(IFeatureLayer pLayer )

{

  ITable pTable = pLayer.FeatureClass;

  pTable.DeleteSearchedRows(null);

}

ae_feature的插入、复制和删除的更多相关文章

  1. jQuery:节点(插入,复制,替换,删除)操作

    <html> <head> <meta http-equiv="Content-Type" content="text/html; char ...

  2. jquery插入,复制、替换和删除节点

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri ...

  3. jQuery中的查找节点、创建节点、插入节点、删除节点、替换节点、复制节点操作方法

    jQuery操作节点我们可以分六点来讲,查找节点.创建节点.插入节点.删除节点.替换节点.复制节点. 一.查找节点 text() - 设置或返回所选元素的文本内容   ,html() - 设置或返回所 ...

  4. 转载:vim的复制,删除,粘贴,块操作以及快速替换功能

    掌握如下命令有什么好办法,我可以告诉你唯手熟尔!!多看多练对于VIM而言,复制,删除,粘贴的操作应该是非常多的.这次也做一个总结,关于处理VIM下的复制,删除,粘贴等操作.学会使用帮助文件,命令的帮助 ...

  5. SQL.Cookbook 读书笔记4 插入更新和删除

    第四章 插入更新和删除 4.1 插入数据 ,'PROGRA','NEW YOURK'); 4.2 从一个表向另一个表中复制 insert into dept_east(deptno,dname,loc ...

  6. php简单实用的操作文件工具类(创建、移动、复制、删除)

    php简单实用好用的文件及文件夹复制函数和工具类(创建.移动.复制.删除) function recurse_copy($src,$dst) {  // 原目录,复制到的目录 $dir = opend ...

  7. java文件和文件夹复制、删除、移动操作

    java文件和文件夹复制.删除.移动操作 import java.io.File; import java.io.FileInputStream; import java.io.FileOutputS ...

  8. mysql插入数据与删除重复记录的几个例子(收藏)

    mysql插入数据与删除重复记录的几个例子 12-26shell脚本实现mysql数据的批量插入 12-26mysql循环语句插入数据的例子 12-26mysql批量插入数据(insert into ...

  9. Java中数组的几个常用算法:插入算法,删除算法,冒泡排序算法

    前言: 在Java中我们常常会用数组,提到数组就不得不介绍数组中常用到的几个算法. 有插入算法,删除算法,冒泡排序算法等. 在学习这几个数组的算法前,我们先来了解一下关于数组一些基本知识. 数组的基本 ...

  10. java实现基于关键字的文件夹(文件)的搜索、文件夹(文件)的复制、删除

    最近在做一个项目,需要实现这几项功能,上网查了很多资料,自己研究了好几天终于实现了,现在与大家分享一下. 一.JAVA实现文件夹的搜索   在百度搜索N个技术文章,从哪些大牛们共享的资料中终于写出了我 ...

随机推荐

  1. Redis安装配置与Jedis访问数据库

    一.NOSQL概要 NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,泛指非关系型的数据库.NoSQL数据库的四大分类 键值(Key-Value)存储数据库 这一类数据 ...

  2. Ruby FFI 入门教程

    FFI是一个可以让用户使用Ruby调用C代码的gem.如果你需要执行一些系统底层调用,或者做一些高性能运算的话,FFI是一个很不错的选择. 1. 安装 执行gem install ffi即可.非常标准 ...

  3. [Node.js] 使用TypeScript编写Node项目

    原文地址:http://www.moye.me/2015/04/25/using_typescript/ 入 TypeScript 坑有一段时间了,由衷的看好,所以决定在自留地絮叨一番. 是什么 Ty ...

  4. Windows Azure Web Site (9) Web Site公网IP地址

    <Windows Azure Platform 系列文章目录> 本文会同时介绍国内由世纪互联运维的Azure China和海外Azure Global. 熟悉Windows Azure平台 ...

  5. 多个ajax请求下等待条显示和隐藏的简单处理

    处理为遇到ajax请求就显示等待条,直到所有的ajax请求执行完毕才关闭等待条.比较简单,源码如下(基于jQuery) //基于jQuery //从第一个ajax请求发出开始显示等待条?直到一系列aj ...

  6. SQL Server 2014里的针对基数估计的新设计(New Design for Cardinality Estimation)

    对于SQL Server数据库来说,性能一直是一个绕不开的话题.而当我们去分析和研究性能问题时,执行计划又是一个我们一直关注的重点之一. 我们知道,在进行编译时,SQL Server会根据当前的数据库 ...

  7. [Server] 搭建发布环境Web Deploy

    在Web Deploy前,实际上完全可以使用FTP方式发布网站. 如果你购买的只是虚拟空间,那FTP方式更广泛. 先来搭建一套FTP吧 添加FTP服务 在网站上添加FTP发布 配置FTP服务 FTP注 ...

  8. Chrome开发者工具详解(1)-Elements、Console、Sources面板

    Chrome开发者工具详解(1)-Elements.Console.Sources面板 Chrome开发者工具面板 面板上包含了Elements面板.Console面板.Sources面板.Netwo ...

  9. Javascript 布尔操作符总结

    在一门编程语言中,布尔操作符的重要性堪比相等操作符.如果没有测试两个值关系的能力,那么诸如if...else和循环之类的语句就不会有用武之地了.在像javascript这样弱类型语言更有其妙用,让我们 ...

  10. Auto Mapper03

      经过上一篇博客的学习,大体了解了Auto Mapper的运行机制和操作流程.我们下来学习下,AutoMapper里面具体的一些东西. 一:规则       当我们使用AutoMapper创建实体和 ...