| | |
| | | package com.ard.route.util; |
| | | |
| | | import java.io.*; |
| | | import java.time.LocalDateTime; |
| | | import java.time.format.DateTimeFormatter; |
| | | |
| | |
| | | * 工具类 |
| | | */ |
| | | public class ToolUtils { |
| | | |
| | | public static Boolean isLocal = false; |
| | | |
| | | public static String localFilePath = "KmzFile/kmz/"; |
| | | |
| | | public static String kmzPath = "kmz"; |
| | | |
| | | /** |
| | | * XML 头部 |
| | | */ |
| | | public static final String XML_HEADER = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"; |
| | | |
| | | /** |
| | | * 生成KMZ文件名称规则 |
| | |
| | | return ""; |
| | | } |
| | | |
| | | // 对象序列化为字节数组 |
| | | public static byte[] serialize(Object obj) throws IOException { |
| | | try (ByteArrayOutputStream baos = new ByteArrayOutputStream(); |
| | | ObjectOutputStream oos = new ObjectOutputStream(baos)) { |
| | | oos.writeObject(obj); |
| | | return baos.toByteArray(); |
| | | } |
| | | } |
| | | |
| | | // 字节数组反序列化为对象 |
| | | public static Object deserialize(byte[] data) throws IOException, ClassNotFoundException { |
| | | try (ByteArrayInputStream bais = new ByteArrayInputStream(data); |
| | | ObjectInputStream ois = new ObjectInputStream(bais)) { |
| | | return ois.readObject(); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 截取字符串 |
| | | * 参数: https://xxx.xxx.xxx.xxx:xxx/kmz/2025/11/08/文件名_20251108152249A001.kmz |
| | | */ |
| | | public static String subStringMinioName(String url) { |
| | | return new File(url).getName(); |
| | | } |
| | | |
| | | /** |
| | | * 截取字符串 |
| | | * minio里面文件夹路径名称 |
| | | */ |
| | | public static String subStringMinioUrlName(String url) { |
| | | int kmzIndex = url.indexOf("/kmz/"); |
| | | return url.substring(kmzIndex + 5); // +5 是为了跳过 "/kmz/" |
| | | } |
| | | |
| | | } |