现在的位置: 首页 > 综合 > 正文

File GeoDatabase先添加列,后添加行,最后添加记录

2013年04月26日 ⁄ 综合 ⁄ 共 1469字 ⁄ 字号 评论关闭

 来自:http://www.cnblogs.com/kisstome88/archive/2009/04/08/1431920.html

File GeoDatabase先添加列,后添加行,最后添加记录

File GeoDatabase先添加列,后添加行,最后添加记录

  

IWorkspaceFactory pGDBworkspaceFactory = new FileGDBWorkspaceFactoryClass();

IWorkspace pGDBWorkspace = pGDBworkspaceFactory.OpenFromFile(@"D:/GIS/GuangYuan/GuangYuan.gdb", 0);

IFeatureWorkspace pFeatureWorkspace = (IFeatureWorkspace)pGDBWorkspace;

ITable pTable = pFeatureWorkspace.OpenTable("Toly");

IWorkspaceEdit pGDBEdit = (IWorkspaceEdit)pGDBWorkspace;

 

for (int i = 0; i < 2501; i++)      //

{

 

     IFields pFields;

     IField pField;

     pFields = new FieldsClass();

     IFieldsEdit pFieldsEdit = (IFieldsEdit)pFields;

     IFieldEdit pFieldEdit = new FieldClass();

     pFieldEdit.Name_2 = "" + Convert.ToString(i);

     pFieldEdit.Type_2 = esriFieldType.esriFieldTypeString;

     pFieldEdit.Length_2 = 10;

     pFieldsEdit.AddField(pFieldEdit);

 

     pField = new FieldClass();

     pField = pFieldsEdit.get_Field(0);

     if (pTable.FindField(pField.Name) > 0)

     {

          //MessageBox.Show("已经存在该字段!");

     }

     else

     {

          pTable.AddField(pField);

     }

}

MessageBox.Show("成功添加列");

pGDBEdit.StartEditOperation();

IRow pRow;

for (int i = 0; i < 10; i++)         //

{

     pRow = pTable.CreateRow();

}

MessageBox.Show("成功添加行");

           

for (int j = 6; j <= 8; j++)

{

      pRow = pTable.GetRow(j);

      for (int i = 0; i < 2501; i++)

      {

          pRow.set_Value(pRow.Fields.FindField("" + Convert.ToString(i)), "bbs");

      }

      pRow.Store();

}

pGDBEdit.StopEditOperation();

MessageBox.Show("成功添加用户");

 

抱歉!评论已关闭.