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;
    }
相关推荐
sun0077009 小时前
SniffMaster(读取苹果的ats文件) 和 wireshark
windows
caimouse13 小时前
Reactos 第 5 章 进程与线程 — 5.8 Windows 的 APC 机制
c语言·windows
PHP隔壁老王邻居13 小时前
windows菜单搜索栏无法显示历史记录或者无法使用修复方法
windows
道一2314 小时前
Windows系统查看端口占用进程的3种实用方法
windows·笔记
半条-咸鱼14 小时前
【INACCESSIBLE_BOOT_DEVICE】安装 Config Tool 后 Windows 蓝屏,最终通过 VMware 虚拟机解决
windows·stm32·vmware·芯片
人工小情绪15 小时前
Windows 安装 Codex 桌面版,并用 CC Switch 管理配置
人工智能·windows·codex·cc switch
caimouse17 小时前
Reactos 第 5 章 进程与线程 — 5.11 线程本地存储 TLS
c语言·windows
李小白6618 小时前
第二天-认识Windows
windows
liu64491133718 小时前
claude code 安装
windows
caimouse18 小时前
Reactos 第 5 章 进程与线程 — 5.9 Windows 线程的调度和切换
windows