private bool Work(string filePath) { IFeatureClass featureClass = ArcGISFileHelper.GetShpFeatureClass(filePath); if (featureClass == null) { return(false); } IGeoDataset geoDataset = featureClass as IGeoDataset; IGeoDatasetSchemaEdit geoDatasetSchemaEdit = geoDataset as IGeoDatasetSchemaEdit; if (geoDatasetSchemaEdit.CanAlterSpatialReference == true) { geoDatasetSchemaEdit.AlterSpatialReference(SpatialReference); return(true); } else { return(false); } }
public bool Init() { if (!System.IO.Directory.Exists(Folder)) { Error += string.Format("文件路径:{0}不存在或不正确;", Folder); return(false); } Files = FileManager.GetSpecialFiles(Folder, "*.shp"); if (Files == null || Files.Count == 0) { Error += string.Format("未识别文件夹中的shapefile文件或者为空;"); return(false); } MaxValue = Files.Count; var file = Files[0]; var basefeatureClass = ArcGISFileHelper.GetShpFeatureClass(file); if (basefeatureClass == null) { Error += string.Format("无法获取文件:{0};", System.IO.Path.GetFileNameWithoutExtension(file)); return(false); } IGeoDataset geoDataset = basefeatureClass as IGeoDataset; FeatureClass = FeatureClassManager.CreateFeatrueClass(this.SavaFilePath, geoDataset.SpatialReference, basefeatureClass.ShapeType); if (FeatureClass == null) { Error += string.Format("无法生成shapefile文件,请确保程序以管理员运行;"); return(false); } // InsertFeatureCursor = FeatureClass.Insert(true); Fields = new List <TangField>() { new TangField() { Name = "TCMC", Alias = "图层名称", Type = esriFieldType.esriFieldTypeString, Index = FeatureClass.Fields.FindField("TCMC") } }; return(true); }