java - 删除原文件失败

标签 java apache-commons-io

我们使用批处理文件作为窗口服务运行 jar,并将 xml 文件放在 c:/processed 目录;

如果 xml 格式错误,则将其移至错误文件夹;我们正在使用以下方法将文件移动到错误文件夹,但出现以下异常。

我认为进程运行时无法将文件移动到错误文件夹。

FileUtils.moveToDirectory("a.xml", "c:/processed/error", false);

exception in movedErrorFolder: Failed to delete original file 'c:/processed/a.xml' after copy to 'c:/processed/error/a.xml'

最佳答案

  1. java进程没有删除文件的权限,但是如果你能在上面写就可以删除它。
  2. 文件被另一个进程锁定。当您编写一个用 Excel 打开的 csv 时,通常会发生这种情况。
  3. 文件被 java 进程自身锁定,在移动之前关闭()文件。

关于java - 删除原文件失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16104343/

相关文章:

java - Java 服务器和浏览器客户端之间乐观对象复制的解决方案?

java - 当不是字母字符时替换全部

android - Android:合并Google Play服务位置和apache commons.io时无法合并dex

java - InputStream.close() 有什么作用吗?

java - Oracle 10g Clob 列中的特殊字符(UTF8 字符)返回为 ?或在 Java 中为空白

java - Openshift - javabean 每两秒创建一次

java - URL 的 commons io 403 但 httpclient 没问题

android - 使用 Robospice 和 Android Studio 的 Commons-Io Duplicate Entry 错误

java - 资源目录上的 FileUtils.listFiles()