From d4aecf9fb7d3d1dd504693f8d7175235087e4aeb Mon Sep 17 00:00:00 2001
From: rain <167982779@qq.com>
Date: Thu, 06 Jun 2024 09:34:06 +0800
Subject: [PATCH] 图斑图片调查状态
---
src/main/java/com/dji/sample/patches/utils/ShapeFileUtil.java | 32 ++++++++++++++------------------
1 files changed, 14 insertions(+), 18 deletions(-)
diff --git a/src/main/java/com/dji/sample/patches/utils/ShapeFileUtil.java b/src/main/java/com/dji/sample/patches/utils/ShapeFileUtil.java
index 72df6b3..baeb13d 100644
--- a/src/main/java/com/dji/sample/patches/utils/ShapeFileUtil.java
+++ b/src/main/java/com/dji/sample/patches/utils/ShapeFileUtil.java
@@ -11,21 +11,14 @@
import org.opengis.feature.simple.SimpleFeature;
import org.opengis.feature.simple.SimpleFeatureType;
import org.opengis.filter.Filter;
-
import java.io.File;
import java.io.IOException;
import java.io.StringWriter;
import java.util.*;
public class ShapeFileUtil {
- /*
- * @param zipFile: 压缩包文件地址
- * @return FeatureCollection
- * @author pangshicheng
- * @description 解析shp压缩包,并返回解析出的 FeatureCollection
- * @date 2023/7/18 16:02
- */
+ //将文件解压
public static FeatureCollection getFeatureCollectionByShpFile(File zipFile) throws IOException {
try {
String tempDir = FileUtil.getTmpDirPath();
@@ -54,27 +47,28 @@
Filter filter = Filter.INCLUDE;
FeatureCollection<SimpleFeatureType, SimpleFeature> collection = source.getFeatures(filter);
return collection;
- }catch (Exception e){
+ } catch (Exception e) {
throw e;
}
}
+
/**
* @param zipFile:
* @return JSONObject
- * @author pangshicheng
* @description 通过shp压缩文件,将其转换为GeoJson格式
- * @date 2023/7/18 16:04
*/
- public static JSONObject shpToGeoJson(File zipFile) throws IOException {
+ //将解压后的文件转换成GeoJson格式
+ public static List<String> shpToGeoJson(File zipFile) throws IOException {
FeatureJSON fjson = new FeatureJSON();
- JSONObject geoJsonObject=new JSONObject();
- geoJsonObject.put("type","FeatureCollection");
+ JSONObject geoJsonObject = new JSONObject();
+ geoJsonObject.put("type", "FeatureCollection");
+ List<String> strings = new ArrayList<>();
try {
// 获取FeatureCollection
FeatureCollection collection = getFeatureCollectionByShpFile(zipFile);
FeatureIterator iterator = collection.features();
- List<JSONObject> array = new ArrayList<JSONObject>();
+ List<JSONObject> array = new ArrayList<JSONObject>();
//遍历feature转为json对象
while (iterator.hasNext()) {
SimpleFeature feature = (SimpleFeature) iterator.next();
@@ -84,17 +78,19 @@
byte[] b = temp.getBytes("iso8859-1");
temp = new String(b, "gbk");
JSONObject json = JSONObject.parseObject(temp);
+ String str2 = json.getJSONObject("geometry").get("coordinates").toString();
+ strings.add(str2);
array.add(json);
}
iterator.close();
//添加到geojsonObject
- geoJsonObject.put("features",array);
+ geoJsonObject.put("features", array);
iterator.close();
- }catch (Exception e){
+ } catch (Exception e) {
throw e;
}
- return geoJsonObject;
+ return strings;
}
}
--
Gitblit v1.9.3