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;
    }
相关推荐
河阿里8 分钟前
Windows批处理脚本(.bat)从零到精通:详细教程与实战案例
windows
idolao9 分钟前
Android Studio 2022安装与汉化教程 Windows版:解压+管理员运行+自定义路径+SDK配置+中文插件指南
android·windows·android studio
摇滚侠21 分钟前
Groovy 如何给集合中添加元素
java·开发语言·windows·python
wei_shuo1 小时前
解放双手!用Windows搭建闲鱼0成本“赚米神器”!AI客服秒回复!
人工智能·windows
洛水如云2 小时前
换新电脑数据迁移全攻略:2 种方法转移文件 / 系统
windows·microsoft·电脑
chushiyunen3 小时前
posting替换postman(好像还是不太好用)
windows
overmind3 小时前
oeasy Python 120[专业选修]列表_直接赋值_浅拷贝_shallowcopy_深拷贝_deepcopy
linux·windows·python
ulias2123 小时前
Linux中的开发工具
linux·运维·服务器·开发语言·c++·windows
Ai.den3 小时前
Windows 安装 DeerFlow 2.0
人工智能·windows·python·ai
openallzzz4 小时前
【多动手】windows 下使用 docker 启动 Java 服务(docker desktop + wsl)
java·运维·windows·docker·容器