pdf转为txt文本格式并使用base64加密输出数据

第一步,pom.xml中引入jar包

XML 复制代码
        <dependency>
            <groupId>org.apache.pdfbox</groupId>
            <artifactId>pdfbox</artifactId>
            <version>2.0.24</version>
        </dependency>

第二步

java 复制代码
package org.example.test.example.changefile;

import org.apache.pdfbox.pdmodel.PDDocument;

import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Base64;

public class ConvertPDFToBase64String {
    public static void main(String[] args) {
        String inputPdfPath = "C:\\Users\\EDY\\Desktop\\input.pdf"; // 输入PDF文件的路径
        String outputTxtPath = "C:\\Users\\EDY\\Desktop\\output.txt"; // 输出TXT文件的路径

        try {
            // 加载PDF文档
            try (PDDocument document = PDDocument.load(new File(inputPdfPath))) {
                // 创建字节输出流
                ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
                // 将PDF文档写入字节输出流
                document.save(byteArrayOutputStream);
                // 获取PDF文档的字节数据
                byte[] pdfBytes = byteArrayOutputStream.toByteArray();

                // 使用Base64编码PDF字节数据
                String base64EncodedString = Base64.getEncoder().encodeToString(pdfBytes);

                // 将Base64编码的字符串写入TXT文件
                try (FileWriter writer = new FileWriter(outputTxtPath)) {
                    writer.write(base64EncodedString);
                }

                System.out.println("PDF file has been converted to Base64 string and saved to TXT file.");
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
相关推荐
liangbo75 分钟前
06-JVM垃圾回收器之CMS
java·jvm
黑马程序员毕设7 分钟前
基于Java的仪器管理系统设计与实现
java·开发语言·spring boot·后端·微信小程序
骇客野人20 分钟前
SpringBoot电商购物车、结算、下单、库存方案设计与落地实施步骤
java·spring boot·后端
asdzx6727 分钟前
Python 实现 PDF 文本查找与高亮标注
开发语言·python·pdf
laoban-yu38 分钟前
Word与PDF文档互转
pdf·word·文档转换
哪 吒39 分钟前
华为OD机试 - 云服务安全策略最优选择 - 深度优先搜索DFS(Java 新系统 200分)
java·华为od·深度优先
拒绝内耗。41 分钟前
程序员学架构(一):一张图看懂 Java 后端架构:一个请求怎样从手机到数据库?
java·智能手机·架构
棣廷42 分钟前
初识Python面向对象
java·开发语言
用户3126874877201 小时前
ThreadLocal 到底会不会内存泄漏?源码级拆解 + 线程池陷阱
java
珍珠先生1 小时前
P11 · MySQL 驱动版本过旧:Client does not support authentication protocol
java