txt地图格式处理

1、txt地图格式

属性描述

坐标系=2000国家大地坐标系

几度分带=3

投影类型=高斯克吕格

计量单位=米

带号=38

精度=0.001

转换参数=,,,,,,

地块坐标

5,475.888,1,测试地块1,面,J50G077061,公路用地,地下,@

J1,1,113.22222222222222,23.129111721551794

J2,1,113.27223148172624,23.127491574622226

J3,1,113.27584564448142,23.127491574622226

J4,1,113.27584564448142,23.129111721551794

J5,1,113.22222222222222,23.129111721551794

2,475.888,2,测试地块2,线,J50G077061,公路用地,地下,@

J1,2,113.27742013409437,23.12780085386443

J2,2,113.27897461269782,23.128599015089463

复制代码

2、处理方法

java 复制代码
 public static List<List<String>> formatTxt(String txt) {

        String[] lineData = txt.split("\n");
        if (lineData.length == 1 || lineData == null) {
            lineData = txt.split("\r\n");
        }

        List<String> lineDataFeatures = Lists.newArrayList(lineData);
        List<List<String>> txtList = new ArrayList<>();
        List<Integer> indexList = new ArrayList<>();
        for (int i = 0; i < lineData.length; i++) {
            String line = lineData[i];
            if (line.contains("@")) {
                indexList.add(i);
            }
        }
        for (int i = 0; i < indexList.size(); i++) {
            if ((i + 1) == indexList.size()) {
                List<String> lineList = lineDataFeatures.subList(indexList.get(i), lineDataFeatures.size());
                txtList.add(lineList);
            } else {
                List<String> lineList = lineDataFeatures.subList(indexList.get(i), indexList.get(i + 1));
                txtList.add(lineList);
            }
        }
        return txtList;
    }
相关推荐
染指111010 小时前
11.UE-游戏逆向-内存中的FUObjectArray(深入理解内存数据)
windows·虚幻·ue·unreal engine 4
TeleostNaCl11 小时前
使用 jintellitype 库在 Java 程序中实现监听 Windows 全局快捷键(热键)
java·开发语言·windows·经验分享·kotlin·电脑
祈祷苍天赐我java之术13 小时前
Redis 有序集合解析
java·前端·windows·redis·缓存·bootstrap·html
你好龙卷风!!!15 小时前
mac | Windows 本地部署 Seata1.7.0,Nacos 作为配置中心、注册中心,MySQL 存储信息
windows·mysql·macos
恸流失18 小时前
java基础-12 : 单列集合(Collection)
java·开发语言·windows
做运维的阿瑞1 天前
Windows 环境下安装 Node.js 和 Vue.js 框架完全指南
前端·javascript·vue.js·windows·node.js
1024小神1 天前
windows远程桌面连接的时候用户名用什么
windows
路由侠内网穿透2 天前
本地部署开源视频存档和搜索引擎工具 TubeArchivist 并实现外部访问
服务器·网络·windows·tcp/ip·搜索引擎·开源
想躺平的咸鱼干2 天前
ollama的下载以及Spring AI Alibaba的ChatModel和ChatClient的流式输出和在idea的实现
windows·https·idea·流式输出·springaialibaba·chatclient·chatmodel
咆哮的黑化肥2 天前
Windows取证
windows