将符号分隔的文本文件txt转换为excel的实现

文本文件如下:

现在不好处理,打算将其转换为excel,其中通过冒号分割:line.split(":")
main方法如下:

java 复制代码
 public static void main(String[] args) {
     
        String textFilePath = "D:\\zoom\\期刊\\J_Medline\\J_Medline";  // 替换为你的文本文件路径
        String excelFilePath = "D:\\zoom\\期刊\\J_Medline\\output1.xlsx";  // 生成的 Excel 文件路径

        List<String[]> data = new ArrayList<>();

        try (BufferedReader br = new BufferedReader(new FileReader(textFilePath))) {
            String line;
            while ((line = br.readLine()) != null) {
                String[] fields = line.split(":");
                String strip = StringUtils.strip(Arrays.toString(fields), "[]");
                if(!strip.equals("--------------------------------------------------------")){
                    data.add(fields);
                }

            }
        } catch (IOException e) {
            e.printStackTrace();
        }

        try (Workbook workbook = new XSSFWorkbook()) {
            Sheet sheet = workbook.createSheet("Sheet1");
            int rowNum = 0;

            for (String[] rowData : data) {
                Row row = sheet.createRow(rowNum++);
                int colNum = 0;
                for (String field : rowData) {
                    Cell cell = row.createCell(colNum++);
                    cell.setCellValue(field);
                }
            }
            try (FileOutputStream outputStream = new FileOutputStream(excelFilePath)) {
                workbook.write(outputStream);
                System.out.println("Excel file created successfully: " + excelFilePath);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

其中去掉了横线----------------------------------------,结果如下:

相关依赖如下:

java 复制代码
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

import java.io.BufferedReader;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
java 复制代码
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>4.1.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.12.0</version>
        </dependency>
相关推荐
独自破碎E4 分钟前
IDEA2023中新建Spring Boot2.X版本的工程的方法
java·spring boot·后端
醇氧8 分钟前
【idea】使用Live Templates
java·ide·intellij-idea
talenteddriver14 分钟前
Java Web:http请求在springboot项目中的传递层级(自用笔记)
java·前端·spring boot·http
咘噜biu19 分钟前
Java后端和前端的接口数据加密方案(椭圆曲线集成加密方案)
java·前端·安全·aes·密钥协商ecdh·椭圆曲线集成加密方案
零雲24 分钟前
java面试:@Resource和@Autowired的区别
java·开发语言·面试
007php00728 分钟前
Git 操作偏门指南:常用和隐藏命令与问题解决
java·git·面试·职场和发展·golang·jenkins·php
li.wz32 分钟前
溯源数据清洗:一次由“可控”到“失控”的复盘
java·后端·doris
仅此,35 分钟前
Java请求进入Python FastAPI 后,请求体为空,参数不合法
java·spring boot·python·组合模式·fastapi
毕设源码-郭学长38 分钟前
【开题答辩全过程】以 基于springboot的健身房信息管理为例,包含答辩的问题和答案
java·spring boot·后端
爱编码的傅同学1 小时前
【单例模式】深入理解懒汉与饿汉模式
java·javascript·单例模式