资源简介
CAD格式的数据在外业数据采集后的主要成果之一,但是经常遇到要将CAD的标注信息作为GIS地理要素的属性字段,如果数据量比较少,添加对应属性,并且照着地理位置进行手工填写,尚且可以接受,但是大数据量的地理要素要进行属性赋值时,就会耗费大量的人力物力,因此本人开发了一个小工具可自动的将cad标注赋值给arcgis的地理要素。
代码片段和文件信息
package application;
import java.io.FileOutputStream;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellstyle;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
public class ExportToExcel {
private List> info;
public void CreateExcel() throws ParseException{
// 第一步,创建一个webbook,对应一个Excel文件
HSSFWorkbook wb = new HSSFWorkbook();
// 第二步,在webbook中添加一个sheet对应Excel文件中的sheet
HSSFSheet sheet = wb.createSheet(“河道数据“);
// 第三步,在sheet中添加表头第0行注意老版本poi对Excel的行数列数有限制short
HSSFRow row = sheet.createRow((int) 0);
// 第四步,创建单元格,并设置值表头 设置表头居中
HSSFCellstyle style = wb.createCellstyle();
style.setAlignment(HSSFCellstyle.ALIGN_CENTER); // 创建一个居中格式
HSSFCell cell = row.createCell((short) 0);
cell.setCellValue(“河道ID“);
cell.setCellstyle(style);
cell = row.createCell((short) 1);
cell.setCellValue(“河道名称“);
cell.setCellstyle(style);
/* cell = row.createCell((short) 2);
cell.setEncoding(HSSFCell.ENCODING_UTF_16);
cell.setCellValue(“年龄“);
cell.setCellstyle(style);
cell = row.createCell((short) 3);
cell.setCellValue(“性别“);
cell.setCellstyle(style);
cell = row.createCell((short) 4);
cell.setCellValue(“生日“);
cell.setCellstyle(style);*/
// 第五步,写入实体数据 实际应用中这些数据从数据库得到,
for (int i = 0; i < info.size(); i++) {
row = sheet.createRow((int) i + 1);
River river = (River) info.get(i);
// 第四步,创建单元格,并设置值
row.createCell((short) 0).setCellValue(river.getId());
row.createCell((short) 1).setCellValue(river.getRiverName());
/*row.createCell((short) 2).setCellValue((double) stu.getAge());
row.createCell((short) 3).setCellValue(stu.getSex() == true ? “男“ : “女“);
cell = row.createCell((short) 4);
cell.setCellValue(new SimpleDateFormat(“yyyy-mm-dd“).format(stu.getBirthday()));*/
}
// 第六步,将文件存到指定位置
try
{
FileOutputStream fout = new FileOutputStream(“E:/riverResult.xls“);
wb.write(fout);
fout.close();
System.out.println(“文件已导出到:E:/riverResult.xls“);
}
catch (Exception e)
{
e.printStackTrace();
}
}
/**
* @param target 需要替换的无序名称
* @param base 正确的有序名称
* @return 判断两个名称的相似度
*/
public Boolean valueCorrect(String target String base) {
char[] arr = base.toCharArray();
int length = arr.length;
int count = 0;
int i = 0;
for (; i < length; i++) {
if (length > 1 && target.indexOf(String.valueOf(arr[i])) > -1) {
count++;
}
}
if((count>0&&length-count==0)||(count>3&&length-co
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1201 2017-11-04 22:56 FXMap\.classpath
文件 569 2017-11-01 16:29 FXMap\.project
文件 598 2017-11-01 16:29 FXMap\.settings\org.eclipse.jdt.core.prefs
文件 101 2017-11-01 16:29 FXMap\bin\application\application.css
文件 3500 2017-11-28 21:49 FXMap\bin\application\ExportToExcel.class
文件 1156 2017-11-28 12:49 FXMap\bin\application\FeatureEditingApp$1$1.class
文件 2503 2017-11-28 12:49 FXMap\bin\application\FeatureEditingApp$1.class
文件 1072 2017-11-28 12:49 FXMap\bin\application\FeatureEditingApp$2.class
文件 915 2017-11-28 12:49 FXMap\bin\application\FeatureEditingApp$3.class
文件 4589 2017-11-28 12:49 FXMap\bin\application\FeatureEditingApp.class
文件 1046 2017-11-28 20:54 FXMap\bin\application\LocalIdentify$1.class
文件 1549 2017-11-28 20:54 FXMap\bin\application\LocalIdentify$10.class
文件 2418 2017-11-28 20:54 FXMap\bin\application\LocalIdentify$11.class
文件 1246 2017-11-28 20:54 FXMap\bin\application\LocalIdentify$2.class
文件 1690 2017-11-28 20:54 FXMap\bin\application\LocalIdentify$3.class
文件 848 2017-11-28 20:54 FXMap\bin\application\LocalIdentify$4.class
文件 1555 2017-11-28 20:54 FXMap\bin\application\LocalIdentify$5.class
文件 1399 2017-11-28 20:54 FXMap\bin\application\LocalIdentify$6.class
文件 1401 2017-11-28 20:54 FXMap\bin\application\LocalIdentify$7.class
文件 1580 2017-11-28 20:54 FXMap\bin\application\LocalIdentify$8.class
文件 1589 2017-11-28 20:54 FXMap\bin\application\LocalIdentify$9.class
文件 1257 2017-11-28 20:54 FXMap\bin\application\LocalIdentify$MouseClickedOverlay.class
文件 14834 2017-11-28 20:54 FXMap\bin\application\LocalIdentify.class
文件 1646 2017-11-28 12:49 FXMap\bin\application\LocalSpatialQuery$1.class
文件 2280 2017-11-28 12:49 FXMap\bin\application\LocalSpatialQuery$2.class
文件 1074 2017-11-28 12:49 FXMap\bin\application\LocalSpatialQuery$3.class
文件 1722 2017-11-28 12:49 FXMap\bin\application\LocalSpatialQuery$4.class
文件 876 2017-11-28 12:49 FXMap\bin\application\LocalSpatialQuery$5.class
文件 1420 2017-11-28 12:49 FXMap\bin\application\LocalSpatialQuery$MouseClickedOverlay.class
文件 8144 2017-11-28 12:49 FXMap\bin\application\LocalSpatialQuery.class
............此处省略27个文件信息
评论
共有 条评论