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();
        }
    }
}
相关推荐
浩瀚地学18 分钟前
【Java】JDK8的一些新特性
java·开发语言·经验分享·笔记·学习
XXOOXRT1 小时前
基于SpringBoot的加法计算器
java·spring boot·后端·html5
阿崽meitoufa1 小时前
JVM虚拟机:垃圾收集器和判断对象是否存活的算法
java·jvm·算法
小程故事多_802 小时前
攻克RAG系统最后一公里 图文混排PDF解析的挑战与实战方案
人工智能·架构·pdf·aigc
我是苏苏2 小时前
C#高级:使用ConcurrentQueue做一个简易进程内通信的消息队列
java·windows·c#
heartbeat..3 小时前
数据库基础知识体系:概念、约束、范式与国产产品
java·数据库·学习笔记·国产数据库
PXM的算法星球4 小时前
【操作系统】哲学家就餐问题实现详解
java
2301_815357704 小时前
Java项目架构从单体架构到微服务架构的发展演变
java·微服务·架构
Ethan-D4 小时前
#每日一题19 回溯 + 全排列思想
java·开发语言·python·算法·leetcode