当前位置: 首页 > news >正文

txt数据转为pdf格式并使用base64解密输出

使用该方法请注意:因为此方法使用了base64解密,需要保证txt中的数据首先用了base64加密,如果只是普通的二进制数据,该方法并不适用 

第一步

 <dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfbox</artifactId><version>2.0.24</version>
</dependency>

第二步

package org.example.test.example.changefile;import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.text.PDFTextStripper;import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;public class ParsePDFFromString {public static void main(String[] args) {// 输入txt文件的路径String txtFilePath = "C:\\Users\\EDY\\Desktop\\input.txt";// 输出PDF文件的路径String outputPdfPath = "C:\\Users\\EDY\\Desktop\\output.pdf";try {// 读取txt文件内容String base64Data = new String(Files.readAllBytes(Paths.get(txtFilePath))).trim();// 检查Base64数据是否为空if (base64Data.isEmpty()) {System.out.println("Base64 data is empty.");return;}// Base64解码byte[] pdfBytes = java.util.Base64.getDecoder().decode(base64Data);// 检查解码后的数据是否为空if (pdfBytes.length == 0) {System.out.println("Decoded PDF data is empty.");return;}// 将解码后的数据转换为PDF文件try (PDDocument document = PDDocument.load(new ByteArrayInputStream(pdfBytes))) {// 创建PDFTextStripper对象PDFTextStripper stripper = new PDFTextStripper();// 从PDF文档中提取文本String text = stripper.getText(document);// 输出提取的文本System.out.println(text);// 保存PDF文档document.save(outputPdfPath);}} catch (IOException e) {e.printStackTrace();}}
}

http://www.lryc.cn/news/472331.html

相关文章:

  • 鸿蒙开发-状态+判断+循环
  • 基于SSM网上招投标管理系统的设计
  • 「C/C++」C++ 设计模式 之 单例模式(Singleton)
  • WPF的行为(Behavior)
  • SpringBoot框架:闲一品交易平台的新突破
  • 关于AI绘画 | Stable Diffusion 技术专栏推荐文章
  • Oracle 第13章:事务处理
  • String的长度有限,而我对你的思念却无限延伸
  • 二叉树的后序遍历
  • Nvidia未来的Blackwell Ultra GPU将更名为B300系列
  • BUUCTF靶场Misc练习
  • ChatGPT、Python和OpenCV支持下的空天地遥感数据识别与计算——从0基础到15个案例实战
  • Flume采集Kafka数据到Hive
  • 大语言模型训练与推理模型构建源码解读(huggingface)
  • 第三十三篇:TCP协议如何避免/减少网络拥塞,TCP系列八
  • 并发编程(2)——线程管控
  • 【数据仓库】
  • 计算机毕业设计——ssm基于HTML5的互动游戏新闻网站的设计与实现录像演示2021
  • ubuntu上申请Let‘s Encrypt HTTPS 证书
  • 解决VMware虚拟机的字体过小问题
  • java-web-day6-下-知识点小结
  • Cisco Packet Tracer 8.0 路由器静态路由配置
  • Unity3D学习FPS游戏(3)玩家第一人称视角转动和移动
  • 引领数字未来:通过企业架构推动数字化转型的策略与实践
  • 计算机毕业设计Python+大模型恶意木马流量检测与分类 恶意流量监测 随机森林模型 深度学习 机器学习 数据可视化 大数据毕业设计 信息安全 网络安全
  • ApsaraMQ Serverless 能力再升级,事件驱动架构赋能 AI 应用
  • Xcode 16.1 (16B40) 发布下载 - Apple 平台 IDE
  • 使用ONNX Runtime对模型进行推理
  • 五款pdf转换成word免费版,谁更胜一筹?
  • 【C++】踏上C++学习之旅(四):细说“内联函数“的那些事