首页 / 浏览问题 / 组件GIS / 问题详情
dwg和dxf格式转换shp格式后文件夹为空
2EXP 2021年11月24日

使用产品: iObjects Java 10i(2021) 操作系统:win10 x64
问题详细描述:dwg、dxf、shp三种格式其他互转都可以,dwg和dxf格式转换shp格式后文件夹为空。请教是什么问题?

private Datasource m_desDatasource = null; 

public void test() {
//		 importDWG("D:/supermap/SampleData/DataExchange/Polyline.dwg");
		 importDXF("D:/supermap/SampleData/DataExchange/Polyline.dxf");
//		 importShp("D:/supermap/SampleData/DataExchange/ShpImport/Polyline.shp");
		 exportSHP("D:/supermap/SampleData/DataExchange/ShpExport", "Polyline.shp");
//		 exportDXF("D:/supermap/SampleData/DataExchange/DxfExport", "Polyline.dxf");
//		 exportDWG("D:/supermap/SampleData/DataExchange/DwgExport", "Polyline.dwg");
	 }

private void importDXF(String path) {
		 try {
			 ImportSettingDXF importSettingDXF= new ImportSettingDXF();
			 importSettingDXF.setImportMode(ImportMode.OVERWRITE);
			 importSettingDXF.setTargetDatasource(m_desDatasource);
			 importSettingDXF
					 .setSourceFilePath(path);
			 DataImport dataImport = new DataImport();
			 dataImport.getImportSettings().add(importSettingDXF);
			 dataImport.run();
		 } catch (Exception e) {
			 System.out.println(e.getMessage());
		 }
	 }


private void exportSHP(String path, String name) {
		 try {
			 ExportSetting exportSetting = new ExportSetting();
			 exportSetting.setOverwrite(true);
			 try{
				 File file = new File(path);
				 if(!file.exists()){
					 file.mkdir();
				 }
			 } catch (Exception e) {
				 e.printStackTrace();
			 }
			 exportSetting.setTargetFileType(FileType.SHP);
			 exportSetting
					 .setTargetFilePath(path + "/" + name);
			 exportSetting.setSourceData(m_desDatasource.getDatasets().get("Polyline"));
			 DataExport dataExport = new DataExport();
			 dataExport.getExportSettings().add(exportSetting);
			 dataExport.run();
		 } catch (Exception e) {
			 System.out.println(e.getMessage());
		 }
	 }

1个回答

您好,请问您相同的文件可以在idesktopX中用桌面进行转换吗
4,151EXP 2021年11月25日
目前刚接触supermap,只用了iobjects java
您好,传入的文件型的数据源和工作空间连接信息,在传入之前不能被打开,否则会导入失败。您也可以把导入导出分开测试,导入成功之后查看一下数据源中是否出现了该数据集。

导入是有数据的,因为我断点查看过,而且dxf转dwg是可以成功的。

在官网文档上,支持的导出数据格式好像没有SHP,不知道是否是这个原因。

您好,直接导出SHP的接口确实是没有的, 但是可以用您代码中的 exportsetting 接口,并设置 setTargetFileType(FileType.SHP) 。但是转换确实是不能转换的。就是该接口只支持导出,但是转换接口不支持转换成SHP文件。
确实如此,感谢!
...