自总结之如何修改指定目录下的指定文件名及File.list()和File.listFiles()的区别

xiaoxiao2021-02-28  35

  不管在什么地方,什么时候,学习是快速提升自己的能力的一种体现!!!!!!!!!!!

修改之前的目录下文件

代码如下

public class Test {     public static void main(String[] args) throws IOException {                     //指定要包含的文件名             String filen="a.txt";             File file=new File("D:/test/weblog/");//获得目录             //获取该目录下的所有文件             File[] fileanme = file.listFiles();             for (File files : fileanme) {                                System.out.println("listFiles()方法显示的路径为:"+files);                              }             String[] strFilename = file.list();             for (String string : strFilename) {                        System.out.println("list()方法显示的路径为:"+string);                              }             //这里是真正要改名的方法             for (File filenames : fileanme) {                 //获取文件的决对路径                 String name = filenames.getCanonicalPath();                 System.out.println("修改之前的绝对路径为"+name);                 //判断路径中有没有包含我所指定的文件                 if (name.contains(filen)) {                     //如果包含,将.tmp后缀名除去更改为xxx.txt                     String[] lastIndexOf = name.split(".tmp");                     System.out.println("截取之后的路径为"+lastIndexOf[0]);                     //重新修改文件名                     filenames.renameTo(new File(lastIndexOf[0]));                     //如果目录下的文件名是唯一的,改完之后就可以直接跳过了,如果想继续改包含a.txt名的就可以把break注释掉                     break;                 }                              }                                   } }

IDE控制台打印

大家现在可以从控制台的输出中就可以看到listFiles与list的区别了,前者是绝对路径后者是文件名,而且他们的返回值也是不同的,listFile返回值是File[]而list的返回值是String[],这点要注意哦

修改之后的目录下显示

如果此文章有什么不对的地方请路过的大神指出,以免误人子弟

尊重原创,如要转载请注明出处!!!
转载请注明原文地址: https://www.6miu.com/read-78394.html

最新回复(0)