Java Apache FileUtils readFileToString 和 writeStringToFile 问题

2023-12-30

我需要将 java 文件(实际上是 .pdf)解析为字符串并返回到文件。在这些过程之间,我将对给定的字符串应用一些补丁,但这在本例中并不重要。 我开发了以下 JUnit 测试用例:

    String f1String=FileUtils.readFileToString(f1);
    File temp=File.createTempFile("deleteme", "deleteme");
    FileUtils.writeStringToFile(temp, f1String);
    assertTrue(FileUtils.contentEquals(f1, temp));

此测试将文件转换为字符串并将其写回。然而测试失败了。 我认为这可能是因为编码的原因,但在 FileUtils 中没有关于此的详细信息。 有人可以帮忙吗? 谢谢!

为了进一步理解而添加: 为什么我需要这个? 我在一台机器上有非常大的pdf文件,它们被复制到另一台机器上。第一个负责创建这些 pdf。由于第二台机器的连接性较低且pdf文件较大,我不想同步整个pdf文件,而只想同步所做的更改。 为了创建补丁/应用它们,我使用谷歌库 DiffMatchPatch。该库在两个字符串之间创建补丁。所以我需要将 pdf 加载到字符串中,应用生成的补丁,然后将其放回文件中。


PDF 不是文本文件。对非编码文本的二进制文件进行解码(转换为 Java 字符)和重新编码是不对称的。例如,如果输入字节流对于当前编码无效,您可以放心它不会正确地重新编码。简而言之 - 不要这样做。使用readFileToByteArray 和 writeByteArrayToFile http://commons.apache.org/io/apidocs/org/apache/commons/io/FileUtils.html反而。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java Apache FileUtils readFileToString 和 writeStringToFile 问题 的相关文章

  • Spring Batch如何作为Reader读取多个表(查询)并将其写入平面文件写入

    在我的项目中 我读取了具有不同查询的多个表 并将这些结果集合并到平面文件中 我该如何实现这一目标 我的意思是 JdbcReader 直接采用 1 个选择查询 我如何自定义它 如果 JdbcCursorItemReader 不能满足您的需求
  • 使用SimpleMailMessage类发送邮件时如何使java字符串着色

    我正在使用 java 中的 SimpleMailMessage 类发送邮件 我将 spring 与 hibernate 结合使用 我想在发送邮件时将特定字符串设置为彩色 Code String emailBody Dear username
  • JPA 实体中的方法是否允许抛出异常?

    我尝试创建的 Entity 有问题 当尝试使用 OpenJPA 实现在 Eclipse 中测试类时出现问题 我有not尝试过其他人 所以不确定它是否适用于他们 我的测试用例非常简单 因为它创建一个 EntityManagerFactory
  • 编译错误:Android Studio

    我正在尝试修改基于 IntelliJ 构建的现有 Android 项目 我已经搜索并尝试了很多东西 但我的错误仍然没有消失 Error 5 1 android apt compiler main D android tinynote app
  • 模拟框架对我有什么作用?

    我听说有些我无法交谈的人是 jmock 的忠实粉丝 我已经做了以测试为中心的开发多年 所以我浏览了网站并查看了一些文档 但仍然不知道它有什么好处 我对春天也有同样的问题 如果您已经了解它是什么 他们的文档会很好地解释它 所以我并不认为 jm
  • 如何突出显示2个html文件之间的差异

    我的网络应用程序有职位描述 某些用户可以修改这些职位描述 每次修改都会产生新版本的职位描述 职位描述的内容由用户使用tinymce 编辑器直接在textarea 中以html 形式进行编辑 我希望能够向用户展示内容从一个版本到另一个版本所做
  • mvn dependency:analyze 结果不正确

    我一直在寻找一种工具 它能够向您显示未使用的依赖项 我很快就偶然发现了 Maven 命令mvn dependency analyze 这样做的问题是 它经常检测到 未使用的 依赖项 如果缺失 这些依赖项就会导致构建失败 这是优化项目的示例
  • 如何在Spring Security SAML示例中配置IDP元数据和SP元数据?

    我想处理 Spring Security SAML 为此 我开始探索Spring安全SAML http docs spring io spring security saml docs 1 0 x reference html chapte
  • Android - Java - 发送 facebook 聊天消息的意图(facebook 禁用 xmpp)

    Facebook 已弃用 xmpp API 有没有办法打开意图 或将数据传递到fb 以在Android设备上发送聊天消息 设备上安装的 Facebook 和 Messenger 应用 谢谢 您需要将 uri 传递给意图 这里10000572
  • Java 创建 Thread 实例时会发生什么

    我有一个关于 Java 线程和操作系统线程的问题 我读了Java 线程与 Pthreads https stackoverflow com questions 5269535 java threads vs pthreads and Jav
  • Spring Batch:比较数据库之间的数据

    我有两个数据库 Oracle 和 MySQL 目标是将Oracle表中的值保存到MySQL中 要求 MySQL表中不存在数据 但我在理解 Spring Batch 时遇到了困难 步骤中 它包含itemReader itemProcessor
  • java.sql.SQLException: - ORA-01000: 超出最大打开游标数

    我收到 ORA 01000 SQL 异常 所以我有一些与之相关的疑问 最大打开游标是否与 JDBC 连接数完全相关 或者它们也与我们为单个连接创建的语句和结果集对象相关吗 我们正在使用连接池 有没有办法配置数据库中语句 结果集对象的数量 如
  • 小米和oppo等中国ROM上的工作管理器,在电池优化时,将工作的计划延迟增加几个小时

    小米和 Oppo 等中国 ROM 上的工作管理器在进行电池优化时 会将计划的工作延迟增加几个小时 但是 我注意到一些应用程序即使在电池优化下也能够让计划的作业安静地完美运行 我注意到的一个区别是 它们每次运行作业时都会显示一条通知 那么这是
  • 如何提高 Guice 启动时的性能

    好吧 我知道我的计算不客观等等 但无论如何 我讨厌在执行单元测试时等待这么多时间 我的 guice swing 应用程序需要大约 7 秒来初始化 这是一个简单的 IRC 客户端 在那一刻 没有打开连接 我什至还没有调用任何 java io
  • 在Java中一个接一个地播放WAV文件

    我正在尝试玩几个WAV http en wikipedia org wiki WAV文件一个接一个 我尝试了这个方法 for String file audioFiles new AePlayWave file start 但这会同时播放它
  • 无法运行简单的 doclet 程序:包 com.sun.javadoc 不存在

    我正在尝试运行一个简单的 doclet 程序 但无法编译它 javac cp cygdrive c Progra 2 Java jdk1 8 0 65 lib tools jar A java 但它抛出 A java 1 错误 包 com
  • Android:如何以编程方式仅圆化位图的顶角?

    我目前正在使用这段代码 Override public Bitmap transform Bitmap source Bitmap result Bitmap createBitmap source getWidth source getH
  • Spring Boot 健康执行器 - 什么时候上线?

    我找不到任何有关 Springs Health Actuator 何时返回 UP 状态的文档 你能依靠一切吗 Components正在初始化 会不会 Controller准备好满足请求了吗 为了测试应用程序上下文是否已加载 您可以执行此自定
  • 文件构造函数说明

    我无法理解以下文件构造函数 public File String parent String child and public File File parent String child 参数有什么作用parent and child该文件
  • Spring JMS开始根据请求监听jms队列

    Spring提供 JMSListener用于监听来自特定队列的消息的注释 还有一个替代方案实施JmsListenerConfigurer http docs spring io spring docs current spring fram

随机推荐

  • C# 中字符串周围的自动引号 - 内置方法?

    是否有一些内置方法可以在 C 中的字符串周围添加引号 你的意思是just添加引号 像这样 text text 我不知道有什么内置方法可以做到这一点 但如果您想的话 编写一个方法会很容易 public static string Surrou
  • 使用 DataGridView 更新多个表

    在 VB NET 2008 表单上 我有一个 DataGridView BindingSource 和 TableAdapter BindingSource 数据源是一个数据集 在数据集中 我有一个连接三个表的 Fill 命令 并且在 Da
  • Objective-C - 如何从字符串中删除字符?

    我有一个 UILabel 它有一个格式化字符串 针对货币格式化 因此有一个美元符号 21 34 在核心数据实体中 属性的类型为 double 我使用 NSDecimalNumber 来保存到数据库 self purchase name se
  • 错误 TS7027:在 Angular2 TypeScript Service 类中检测到无法访问的代码

    我正在学习 PluralSight 课程并练习用 Angular2 编写基本服务 我有以下服务文件 客户服务 ts import Injectable from angular core Injectable export class Cu
  • 从节点列表中按名称获取节点

    我试图通过节点的名称而不是索引来获取节点item i 因为Document我正在阅读的内容并不总是每次都将节点放在同一位置 但节点的名称将始终相同 我正在尝试获取节点
  • 调用引用指针的非托管库函数

    假设我们有一个具有以下原型的 C 函数 int myFunction int someNumber int arraySize signed char array Extra function to free allocated memor
  • 将动态链接器与 qemu-arm 一起使用

    我有一个非常简单的arm可执行文件 用arm linux gnueabi工具链 我可以执行它qemu arm没有任何问题 qemu arm L usr arm linux gnueabi a out Hello world 不带任何参数运行
  • NativeAdvanced - 原生广告响应不正确。未正确指定单击操作

    我正在尝试在我的应用程序中实现 NativeAd 直到昨天一切都工作正常 现在正在打印这些错误日志 I Ads WebView loading for native ads I Ads Javascript has loaded for n
  • 在 Go 中通过名称调用结构体及其方法?

    我发现了一个函数调用MethodByName here http golang org pkg reflect Value MethodByName http golang org pkg reflect Value MethodByNam
  • Spring ApplicationContext.getBean(Class c) 不适用于代理类

    我需要通过豆类的类类型查找豆类 当bean被代理包装时 某些方法是 Transactional ApplicatoinContext无法找到它们 我发现如果我通过接口查找它们 它是有效的 但在这种情况下我正在使用具体的类类型 我知道该 be
  • AJAX - Spring 控制器 - JSP

    我想生成对 Spring MVC 控制器的 AJAX 基于 jQuery 请求 并将带有对象的 Collection 返回到 jsp 我有两个烦恼 1 AJAX成功块不起作用 数据类型的东西 2 不知道如何将这个对象显示到jsp上
  • C 中的 Salted sha512,无法与 Symfony2 的 FOSUserBundle 同步

    我的开发分为两个部分 该网站是一个使用 FOSUserBundle 的 Symfony 应用程序 它使用 SHA512 和盐对密码进行加密 一个用 C 语言编程的身份验证模块 一旦给出盐和明文密码 它应该能够重现 SHA512 加盐哈希 有
  • 如何用数据库数据填充TableView

    我一直在尝试加载TableView从数据库查询数据 但似乎无法让它工作 这是我第一次尝试填充TableView与数据库查询项目 以防我的代码看起来杂乱且远非良好 FXML 是通过 JavaFX SceneBuilder 完成的 这是数据库查
  • protobuf-net AddField 忽略 IgnoreListHandling

    我有这个数据结构声明 ProtoContract public class NotACollectionHolder public NotACollection some objects ProtoContract IgnoreListHa
  • ctypes.pointer、ctypes.POINTER 和 ctypes.byref 之间有什么区别?

    在ctypes中 指针和byref有什么区别 它们似乎都是将指针传递给函数的一种方式 例如作为输出参数 从功能上来说 它们是等效的 但是 那蟒蛇文档 http docs python org release 2 5 2 lib ctypes
  • 为什么我的 WinForm 控件在绘制事件之前闪烁?

    我有一个表单 其中加载了一个用户控件 其中包含 3 个其他用户控件 每次我移动到另一个选项卡并返回到该用户控件时 其中的 3 个控件甚至在事件触发之前就会闪烁 我尝试了一切 包括 this DoubleBuffered true this
  • 水平平滑动量滚动

    问题 我需要平滑一些鼠标滚轮水平的滚动到此布局 https jsfiddle net 38qLnzkh https jsfiddle net 38qLnzkh 选择 我发现这个脚本完全符合我的要求 但它似乎只能垂直工作 黄油 js http
  • VS2017 设置项目 - 在哪里?

    我正在尝试为 C 项目创建安装项目 安装程序 但在 VS2017 中找不到 安装项目 模板 在 VS2015 中它位于 其他项目类型 gt gt 设置和部署 gt gt Visual Studio 安装程序 我用过几次没有任何问题 我的 V
  • 带有半圆边缘的 android 按钮

    我正在尝试创建一个用于 Android 项目中的图像按钮的形状 该形状基本上在左侧和右侧都有半圆 我想我可以只使用带有半径的形状 XML 但这只是圆角 我需要整个左侧和右侧是半圆 如下图所示 我当前的形状 XML 如下所示
  • Java Apache FileUtils readFileToString 和 writeStringToFile 问题

    我需要将 java 文件 实际上是 pdf 解析为字符串并返回到文件 在这些过程之间 我将对给定的字符串应用一些补丁 但这在本例中并不重要 我开发了以下 JUnit 测试用例 String f1String FileUtils readFi