尝试重命名目录名称和文件名.

try

{

File dir = new File("DIR");

dir.mkdir();

File file1 = new File(dir,"myfile1.txt");

file1.createNewFile();

File file2 = new File(dir,"myfile2.txt");

file2.createNewFile();

dir.renameTo(new File("myDIR"));

System.out.print(file1.renameTo(new File(dir,"myf1.txt")));

}

catch(IOException ie)

{

}

但是,只有目录成功重命名,而不是文件名.

这些操作可以不同时完成吗?

解决方法:

这是因为您的目录,file1和file2指向旧路径.

执行这些行后,

File dir = new File("DIR");

dir.mkdir();

File file1 = new File(dir,"myfile1.txt");

file1.createNewFile();

File file2 = new File(dir,"myfile2.txt");

file2.createNewFile();

这些将是变量引用的路径,

dir = "DIR" // Exists

file1 = "DIR\myfile1.txt" //Exists

file2 = "DIR\myfile2.txt" //Exists

执行后,

dir.renameTo(new File("myDIR"));

变量引用的路径仍然相同,

dir = "DIR" // Doesn't exist anymore because it's moved.

file1 = "DIR\myfile1.txt" // Doesn't exist anymore because it's moved along with dir.

file2 = "DIR\myfile2.txt" // Doesn't exist anymore because it's moved along with dir.

所以,当你打电话时,

System.out.print(file1.renameTo(new File(dir,"myf1.txt")));

您在不存在的文件和不存在的目录上调用renameTo().所以它一定会失败.

即使你在dir,file1或file2中的任何一个上调用.exists()方法,它也只会返回false.

标签:java,directory,file,java-io

来源: https://codeday.me/bug/20190609/1203937.html

java 重命名目录_java – 重命名目录时重命名文件相关推荐

  1. java拷贝文件目录结构_Java如何复制目录_Java基础教程系列

    Java如何复制目录,Java基础教程系列,如果要将目录及其包含的所有子文件夹和文件从一个位置复制到另一个位置,请使用下面的代码,该代码使用递归遍历目录结构,然后使用Files.copy()函数复制文 ...

  2. java 标识符命名规则_java语言基础之标识符和命名规则详解

    免费资源网 - https://freexyz.cn/ 标识符Java 对各种变量.方法和类等要素命名时使用的字符序列称为标识符 技巧:凡是自己可以起名字的地方都叫标识符 定义合法标识符规则: 由26 ...

  3. java 如何级联删除_Java学习-040-级联删除目录中的文件、目录

    之前在写应用模块,进行单元测试编码的时候,居然脑洞大开居然创建了一个 N 层的目录,到后来删除测试结果目录的时候,才发现删除不了了,提示目录过长无法删除.网上找了一些方法,也找了一些粉碎机,都没能达到 ...

  4. java重入锁_java并发编程:可重入锁是什么?

    释义 广义上的可重入锁指的是可重复可递归调用的锁,在外层使用锁之后,在内层仍然可以使用,并且不发生死锁(前提得是同一个对象或者class),这样的锁就叫做可重入锁.ReentrantLock和sync ...

  5. java 跳转虚拟目录_java tomcat虚拟目录的深入了解

    我们知道,Web网站中的内容(包括网页,图片,音频文件等)一般都存放在App的目录下.但随着网站内容的不断丰富,用户需要把不同层次的内容组织成网站的子目录.我们通常的做法是在网站主目录下新建子目录,并 ...

  6. java 生成word目录_java代码生成word目录

    一.编辑当前DataBase 选择DataBase-->edit Current DBMS... 弹出如下对话框: 如上图,先解释一下: 根据红颜色框从上往下解释一下. 第一个红框是对应的修改的 ...

  7. java生成word目录_java代码生成word目录

    一.编辑当前DataBase 选择DataBase-->edit Current DBMS... 弹出如下对话框: 如上图,先解释一下: 根据红颜色框从上往下解释一下. 第一个红框是对应的修改的 ...

  8. java service层 事务_Java高并发秒时啊API之Service层1

    ---2-1 使用Spring托管Service依赖理论---------------------------- spring ioc优势(工厂模式): 1.对象创建统一托管 2.规范的生命周期管理 ...

  9. ant java 外部jar包_java – 在使用Ant的新jar文件构建中包括外部jar文件

    我只是"继承"一个Java项目,而不是来自Java背景,我有时失去一点. Eclipse用于在开发期间调试和运行应用程序.我已经通过Eclipse成功创建了一个.jar文件,'包括 ...

  10. java ftp 设置编码_java ftp上传下载,下载文件编码设置

    /** * Description: 从FTP服务器下载文件 * @Version1.0 Jul 27, 2008 5:32:36 PM by 崔红保(cuihongbao@d-heaven.com) ...

最新文章

  1. FreeMarker中的list集合前后台代码
  2. ps混合模式glsl代码
  3. 给SAP系统安装联机帮助(事务码SR13)
  4. 《ASP.NET Core 真机拆解》 送书活动结果公布
  5. SparkStreaming - 自定义数据源(自定义采集器)
  6. armeabi和armeabi-v7a的区别
  7. [Python]网络爬虫(七):Python中的正则表达式教程(转)
  8. centos dhcp 服务器搭建 多vlan
  9. Redis数据持久化管理之RDB模式
  10. iOS开发-常见错误和警告总结
  11. 12个有趣的HTML5实例(转)
  12. 手机App性能测试工具Genymotion安卓模拟器使用和简介
  13. 谷歌浏览器86版_VMLogin 浏览器1.2.8.0 版本更新公告:全新内核 Chromium 86.0.4240.75 更新说明...
  14. photoshop2022更新,新版PS新增了哪些功能Mac/win
  15. Win11的筛选键怎么关闭
  16. 计算机控制系统直流电机闭环调速实验,51系列单片机直流电机闭环调速实验1.pdf...
  17. 新闻学应该掌握哪些计算机技能,哪些人适合学新闻学专业 要掌握哪些技能
  18. RLChina强化学习笔记
  19. WORD文档无法编辑解决
  20. 在电脑端微信或低版本ios,使用微信自带浏览器打开网页不显示

热门文章

  1. java程序员需看的13本书
  2. Sony/Sony Ericsson/索尼爱立信Shakira root教程_方法
  3. 网络传真机——让传真,超越纸的限制
  4. C语言C#参数对照表
  5. java arraycopy
  6. arraycopy方法(将数组中指定的数据拷贝到另一个数组)
  7. [发布] Photoshop 油画效果滤镜
  8. 人工智能导论 自然语言处理
  9. 服务器三大体系 SMP、NUMA、MPP 之详解
  10. C++中的union介绍