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

SuperMap自带数据集导出功能,但项目需要,自己动手写了个导出方法,可批量导出所有的数据集到本地,并保存为SHP格式文件;
SuperMap二次开发,C#,导出数据集并转化为SHP格式文件_第1张图片

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;//文件类型shp

ExportSetting 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();
}       
 


导出结果如图:
SuperMap二次开发,C#,导出数据集并转化为SHP格式文件_第2张图片

你可能感兴趣的:(SuperMap8C二次开发)