enum WorkspaceType { enumGeodatabase = 0, enumPersonalGeodatabase = 1, enumShape = 2, enumCoverage = 3 } private void button1_Click(object sender, EventArgs e) { try { WorkspaceType iWorkspaceConnect = WorkspaceType.enumShape; IPropertySet pPropset = new PropertySet(); IWorkspaceFactory pFact; switch (iWorkspaceConnect) { case WorkspaceType.enumGeodatabase: pPropset.SetProperty("Server", "hephaestus"); pPropset.SetProperty("Instance", "sde8_mss"); pPropset.SetProperty("Database", "sde"); pPropset.SetProperty("user", "sde"); pPropset.SetProperty("password", "go"); pPropset.SetProperty("version", "sde.DEFAULT"); pFact = new SdeWorkspaceFactory(); System.Windows.Forms.MessageBox.Show("Geodatabase"); break; case WorkspaceType.enumPersonalGeodatabase: pPropset.SetProperty("DATABASE", "d:\\data\\Access Data\\SDETest.mdb"); pFact = new AccessWorkspaceFactory(); System.Windows.Forms.MessageBox.Show("Personal Geodatabase"); break; case WorkspaceType.enumShape: pPropset.SetProperty("DATABASE", "D:\\data\\SDEtestData\\Greeley"); pFact = new ShapefileWorkspaceFactory(); System.Windows.Forms.MessageBox.Show("Shapefile"); break; case WorkspaceType.enumCoverage: pPropset.SetProperty("DATABASE", "D:\\data\\Coverage"); pFact = new ArcInfoWorkspaceFactory(); System.Windows.Forms.MessageBox.Show("Coverage"); break; default: break; } IWorkspace pWorkspace = pFact.Open(pPropset, 0); IFeatureWorkspace pFeatureWorkspace = (IFeatureWorkspace)pWorkspace; IFeatureClass pFeatureClass; if(iWorkspaceConnect == WorkspaceType.enumCoverage) pFeatureClass = pFeatureWorkspace.OpenFeatureClass("parcelsolygon"); else pFeatureClass = pFeatureWorkspace.OpenFeatureClass("parcels"); IQueryFilter pQueryFilter = new QueryFilter(){ WhereClause = "SUBTYPE = 'INDSTL'" }; IFeatureCursor pFeatureCursor = pFeatureClass.Search(pQueryFilter, false); IFeature pFeature = pFeatureCursor.NextFeature(); int iRecCount = 0; while (pFeature != null) { iRecCount +=1; pFeature = pFeatureCursor.NextFeature(); } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
using System; using System.IO; using ESRI.ArcGIS.Carto; using ESRI.ArcGIS.Geodatabase; protected override void OnClick() { DumpAttributesToFileExample("c:/temp/outfile.txt"); } private void DumpAttributesToFileExample(string fileName) { StreamWriter outFile = new StreamWriter(new FileStream(fileName, FileMode.Create, FileAccess.Write)); try { IMap map = ArcMap.Document.FocusMap; IFeatureLayer featureLayer = (IFeatureLayer)map.get_Layer(0); IFeatureClass featureClass = featureLayer.FeatureClass; IQueryFilter queryFilter = new QueryFilterClass(); queryFilter.WhereClause = ""; IFeatureCursor featureCursor = featureClass.Search(queryFilter, true); IFeature feature = null; while ((feature = featureCursor.NextFeature()) != null) { string output = "Field #2 = " + feature.get_Value(1).ToString() + " and Field #3 = " + feature.get_Value(2).ToString(); outFile.WriteLine(output); } } finally { outFile.Close(); } }
Los miembros registrados pueden publicar, seguir actualizaciones y más. ¿Nuevo aquí? Regístrate gratis.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.