首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用JAVA重命名现有文件或pdf失败

使用JAVA重命名现有文件或pdf失败
EN

Stack Overflow用户
提问于 2011-07-07 11:36:44
回答 2查看 3.3K关注 0票数 0

字符串fileOne = "C:/1236.pdf";

字符串fileTwo = "C:/22.pdf";

字符串mergedFileLocation = "C:/myMergedData.pdf";

if (新文件(MergedFileLocation).renameTo(新文件(FileOne){

// rename rename { // rename已失败}

合并完成后

重命名现有文件

所以我需要先删除fileOne,然后我想我需要重命名

我需要重命名并将mergedFileLocation替换为fileOne

myMergedData.pdf to 1236.pdf

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-07-07 11:50:44

先删除旧文件。

代码语言:javascript
运行
复制
File f = new File(fileOne);
if (f.delete() && new File(mergedFileLocation).renameTo(f)) { 
    //successfully renamed
}
票数 0
EN

Stack Overflow用户

发布于 2011-07-07 11:44:01

使用已经存在的文件名重命名文件的尝试将失败。您必须先删除或重命名旧文件。

代码语言:javascript
运行
复制
  public static void main(String[] args) throws IOException {

    File workingDir = new File(".");
    File fileOne = new File("1236.pdf");
    File mergedFile = new File("myMergedData.pdf");

    fileOne.createNewFile();
    mergedFile.createNewFile();

    FilenameFilter filter = new FilenameFilter() {
      public boolean accept(File dir, String name) {
        return name.endsWith(".pdf");
      }
    };

    String[] list = workingDir.list(filter);
    System.err.println(Arrays.asList(list));

    if (fileOne.isFile()) {
      // delete or rename
      if (fileOne.delete()) {
        // deleted successfully
      }
    }

    list = workingDir.list(filter);
    System.err.println(Arrays.asList(list));

    if (mergedFile.renameTo(fileOne)) {
      // renamed successfully
    } else {
      // rename failed
    }

    list = workingDir.list(filter);
    System.err.println(Arrays.asList(list));

  }

输出是

代码语言:javascript
运行
复制
[1236.pdf, myMergedData.pdf]
[myMergedData.pdf]
[1236.pdf]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6609966

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档