本人菜鸟一枚,这是第一篇技术博客。这篇文章其实没什么技术含量,只是博主即兴所写,研究的问题也是很常见的Java IO知识,真要说目的性,那就是为了满足自己的强迫症了。
先说下文件名修改。修改文件名是IO操作比较基本的知识,使用File类的renameTo()就可以实现。
贴下文件的磁盘地址:F:\oldName.docx。
截图:
代码:
package basic;
import java.io.File;
import java.util.UUID;
/**
* Created with IntelliJ IDEA.
* User: nulihouzi
* Date: 13-7-17
* Time: 下午7:28
*/
public class FileRename {
public static void main(String[] args) {
File file = new File("F:" + File.separator + "oldName.docx");
//获取文件的绝对路径
String absolutePath = file.getAbsolutePath();
//获取文件名
String oldName = file.getName();
//获取文件安装目录
String directory = absolutePath.substring(0, absolutePath.lastIndexOf(oldName));
//获取文件后缀名
String postfix = oldName.substring(oldName.lastIndexOf("."), oldName.length());
//新文件名
String newName = "newName";
//重命名文件
file.renameTo(new File("F:" + File.separator + newName + postfix));
}
}
执行代码,看结果:
文件名已经被修改了。
这时我们可以改一下最后一行代码:
package basic;
import java.io.File;
import java.util.UUID;
/**
* Created with IntelliJ IDEA.
* User: nulihouzi
* Date: 13-7-17
* Time: 下午7:28
*/
public class FileRename {
public static void main(String[] args) {
File file = new File("F:" + File.separator + "newName.docx");
//获取文件的绝对路径
String absolutePath = file.getAbsolutePath();
//获取文件名
String oldName = file.getName();
//获取文件安装目录
String directory = absolutePath.substring(0, absolutePath.lastIndexOf(oldName));
//获取文件后缀名
String postfix = oldName.substring(oldName.lastIndexOf("."), oldName.length());
//新文件名
String newName = "oldName";
//重命名文件
file.renameTo(new File(newName + postfix));
}
}
这段代码和上段的区别在于:最后一句代码没有指定文件的存储目录,这时文件保存在哪儿呢?执行代码,我们先看原始的磁盘地址:
这是我们发现之前的文件在重命名之后消失了,我昨天在搜索关于文件重命名代码的信息时,看到了一技术人员对该问题的解释是:代码执行后,由于未指定文件的存放路径,文件被删除了。真的是这样吗?
我们使用下windows的搜索功能:
我们找到了重命名后的文件,在没有指定文件的磁盘路径时,重命名后的文件被保存在idea的project根路径下。
后记:这段代码很简单,相信各位看官很快就能看完。但也告诉我们:实践是检验真理的唯一标准。在我们被海量信息包围的时候,我们应该保持清醒的头脑,多问自己几个为什么,多动手实践看到的,听到的所谓真理,这样我们才能不断进步,才能战胜我们自身的懒惰。与各位看官共勉。由于和朋友聊天,时间上无法再陈述便利磁盘文件的个人所得,留到下次吧。博文中如有不妥之处,忘各位批评指正,本人很是珍惜完善自己的每次机会。