File类详解
Posted AnswerTheQuestion
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了File类详解相关的知识,希望对你有一定的参考价值。
一、File类;
File类时io包中唯一代表磁盘文件本身的对象。File类定义了一些与平台无关的方法来操作文件,可以通过调用File类中的方法,实现创建、删除、重命名文件等。
File类的对象主要用来获取文本的一些信息,如文件所在的目录、文件的长度、文件的读取权限等。
1.文件的创建;目录(文件夹)的创建
File(String pathname):在此File的构造方法中填入一个String类型的路径名;实例如下:
String s="d:\\aaa.txt";
File f=new File(s); 或者 File f=new File("d:\\aaa.txt");
(以上是创建文件(或者目录)对象,对象创建出来了,那么就要开始创建文件(或者目录)了)
f.createNewFile();(创建文件)f.mkdir(创建目录)
(这样文件就被创建出来了,)
2.文件和目录的删除;
同上一样,先创建文件对象,调用该对象的删除方法
f.delete();
package com.inba.maya.liu; import java.io.File; public class Text { public static void main(String[] args) throws Exception{ //1.创建文件 /* String fileName="g:\\aaa.txt"; File f=new File(fileName); f.createNewFile(); //此方法建文件 */ //2.创建目录 /* String dirName="g:\\bbb"; File f=new File(dirName); f.mkdir(); //此方法建文件夹 */ //3.删除--删文件或目录 String fileName="g:\\aaa"; File f=new File(fileName); f.delete(); } }
3.重命名和移动
package com.inba.maya.liu; import java.io.File; public class Text { public static void main(String[] args) throws Exception{ //三、重命名或移动 String n1="f:\\bbb.txt"; String n2="g:\\bbb.txt"; File f1=new File(n1); File f2=new File(n2); f1.renameTo(f2); //实际上是先移动,后改名 } }
4.列表--把该文件夹下的文件或者子文件找出来:
package com.inba.maya.liu; import java.io.File; public class Text { public static void main(String[] args) throws Exception{ /*//第一种方式遍历.list String dirName="f:\\复刻"; File f=new File(dirName); String[] names=f.list();//出来的是文件对象的数组 for(int i=0;i<names.length;i++){ System.out.println(names[i]);//获取文件名,不带路径 } */ //第二种方式遍历File[] String dirName="F:\\复刻\\新建文件夹\\"; File f=new File(dirName); File[] files=f.listFiles(); for(int i=0;i<files.length;i++){ //String s=files[i].getName();//获取文件名 //String s=files[i].getPath();//获取文件路径,不写get,默认是getpath //System.out.println(s); File dest=new File(dirName+i+"HHH.txt"); files[i].renameTo(dest); } } }
第二种遍历方式中,没有注释的部分是利用了renameTo方法来批量修改文件名称;
1.首先定义源目录:String dirName="F:\\复刻\\新建文件夹\\"
2.f.listFiles(),取出的是数组,付给File[]
3.遍历,没循环一次造一个目标文件:File dest=new File(dirName+i+"HHH.txt");
4.files[i].renameTo(dest);把当前文件移动并重命名到目标文件。
5.判断是否是文件或目录或隐藏文件等等(具体查看jdk文档File类)
package com.inba.maya.liu; import java.io.*; public class Text1 { public static void main(String[] args) throws Exception { String s="c:"; File f=new File(s); File[] files=f.listFiles(); for(int i=0;i<files.length;i++){ if(files[i].isDirectory()){ System.out.print("【目录】"); }else if(files[i].isHidden()){ System.out.print("【隐藏文件】"); }else if(files[i].isFile()){ System.out.print("【文件】"); } System.out.println(files[i]); } } }
以上是关于File类详解的主要内容,如果未能解决你的问题,请参考以下文章