前言
上一篇博文简单介绍了有关数据交换之导入栅格数据的相关操作,这个部分主要认识下数据交换之导出矢量数据的相关操作。
对于SuperMap支持导出的矢量文件格式,可点击下方链接跳转博客查看,本篇博文以导出矢量数据为GeoJson格式为例。
一、有关常用类说明
DataExport类 | 数据导出类,将SuperMap格式数据导出为外部格式数据。 |
ExportSettingGeoJson类 | GeoJson 文件导出的参数设置类,继承自 ExportSetting 类。 |
二、有关常用方法及属性说明
DataExport.DataExportSettings.Add() | 向导出设置信息集合中添加一个导出设置信息对象。 |
DataExport.Run() | 执行导出数据集的操作,返回导出结果 ExportResult 。 |
ExportResult.SucceedSettings | 导出成功的任务的 ExportSetting 集合。 |
三、界面设计
在原有界面基础上,添加数据导出相关功能点,如下图所示:
四、功能实现
private void ExportGeoJson_Click(object sender, EventArgs e)
{
//判断当前工作空间是否有打开的数据源
if (D_workspace.Datasources.Count == 0)
{
MessageBox.Show("请打开一个数据源");
return;
}
Datasource datasource = D_workspace.Datasources[0];
//获取当前选中节点的文本,即数据集的名称
string strDsName = this.D_workspaceControl.WorkspaceTree.SelectedNode.Text;
//从数据源中获取指定名称的数据集,并将其转换为DatasetVector类型的对象
DatasetVector dataset = datasource.Datasets[strDsName] as DatasetVector;
DataExport dataExport = new DataExport();
ExportSettingGeoJson geoJson = new ExportSettingGeoJson();
//设置需要导出的源数据集
geoJson.SourceData = dataset;
//设置导出目标文件的路径信息为应用程序的启动路径下的文件夹
string path = Application.StartupPath + @"\Result";
geoJson.TargetFilePath = path;
//设置导出的目标文件的类型
geoJson.TargetFileType = FileType.GEOJSON;
//向导出设置信息集合中添加一个导出设置信息对象
dataExport.ExportSettings.Add(geoJson);
//执行导出矢量数据
ExportResult result = dataExport.Run();
if(result.SucceedSettings.Length>0)
{
MessageBox.Show("导出矢量数据集"+ strDsName + "到" + Application.StartupPath + "成功", "提示");
}
}
五、运行结果
总结
以上就是有关于SuperMap iObjects 11i .NET数据交换之导出矢量数据的相关操作的一些过程记录,我们下篇博文再见!