SuperMap二次开发,C#,导出数据集并转化为SHP格式文件

来源:互联网 发布:linux shell脚本 编辑:程序博客网 时间:2024/06/03 22:49
SuperMap自带数据集导出功能,但项目需要,自己动手写了个导出方法,可批量导出所有的数据集到本地,并保存为SHP格式文件;


private void ExportDataToSHP(){Workspace mWorkspace = null;mWorkspace = SuperMap.Desktop.Application.ActiveApplication.Workspace;//1.打开地图的工作空间string strWorkSpaceName = System.Windows.Forms.Application.StartupPath + @"\Data\数据.smwu";WorkspaceConnectionInfo connectinfo = new WorkspaceConnectionInfo(strWorkSpaceName);mWorkspace.Open(connectinfo);mapControl = new MapControl(mWorkspace);mapControl.Map.Workspace = mWorkspace;//2.取得数据源、数据集DatasetVector dataset_One = (DatasetVector)mWorkspace.Datasources["数据源名称"].Datasets["数据集名称"];//3.构建导出设置对象,设置导出文件路径、设置要导出的数据集ExportSetting DataOne = new ExportSetting();//可批量转换,这里是要转换的第一个数据DataOne.TargetFilePath = "F:\tet.shp";//导出路径DataOne.SourceData = dataset_One;DataOne.TargetFileType = FileType.SHP;//文件类型shpExportSetting DataTwo = new ExportSetting();//导出的第二个数据DataTwo.TargetFilePath = "F:\twotext.shp";DataTwo.SourceData = DataTwo;DataTwo.TargetFileType = FileType.SHP;//4.创建建DataExport对象,设置导出设置对象DataExport dataExport = new DataExport();ExportSettings exportSeting = dataExport.ExportSettings;exportSeting.Add(DataOne);//第一个数据exportSeting.Add(DataTwo);//第二个数据                //5.执行导出ExportResult result = dataExport.Run();}        


导出结果如图:

原创粉丝点击