不管在什么地方,什么时候,学习是快速提升自己的能力的一种体现!!!!!!!!!!!
修改之前的目录下文件
代码如下
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[],这点要注意哦
修改之后的目录下显示
如果此文章有什么不对的地方请路过的大神指出,以免误人子弟
尊重原创,如要转载请注明出处!!!
