File类
1 File类在java.io包下,使用需要导包
2 构造方法 File(String pathname) 通过将给定的路径字符串转换为抽象路径名来创建新的File实例
File f1=new File("E:\\itcast\\java.txt");//如果只写了java.txt,文件会在模块在同级目录下创建
System.out.println("f1");// 输出的是上面的路径
File(String parent,String child)从父路径名字符串和子路径名字符串创建新的File实例
File f2=new File("E:\\itcast","java.txt");
System.out.println("f2");//输出的也是路径
File(File parent,String child)从父抽象路径名和子路径名字符串创建新的File实例
File f3=new File("E:\\itcast);
File f4=new File(f3,"java.txt");
System.out.println("f4");//输出的也是路径
三个都可,但是第一个最简单
3 File类的创建功能
public boolean creatNewFile() 当具有该名称的文件不存在时,创建一个由该抽象路径名命名的新空文件
public class demo2 {
public static void main(String[] args) throws IOException //如果没有文件,就创建并返回true
{ //如果有文件,就不创建并返回false
File f1=new File("D:\\abc\\java.txt");
System.out.println(f1.createNewFile());
}
}
public boolean mkdir() 创建由此抽象路径名命名的目录
File f2=new File("D:\\arknights\\amiya");//如果目录不存在,创建目录并返回true
System.out.println(f2.mkdir()); //如果目录存在,不创建并返回false
public boolean mkdirs() 创建由此抽象路径名命名的目录,包括任何必须但不存在的父目录
File f3=new File("D:\\abc\\arknights\\operator\\amiya");//如果目录不存在,创建目录并返回true
System.out.println(f3.mkdirs());//如果目录存在,不创建并返回false
4 File类的删除功能
public boolean delete() 删除由此抽象路径名表示的文件或目录
如果要删除的目录下有内容,删除不了
File f1=new File("D:\\abc\\java.txt");
System.out.println(f1.createNewFile());
System.out.println(f1.delete());
5 File类判断和获取功能
public boolean isDirectory() 测试此抽象路径名表示的File是否为目录
public boolean isFile() 测试此抽象路径名表示的File是否为文件
public boolean exists() 测试此抽象路径名表示的File是否存在
public static void main(String[] args) throws IOException
{
File f1=new File("java.txt");
//System.out.println(f1.createNewFile());
System.out.println(f1.isDirectory());
System.out.println(f1.isFile());
System.out.println(f1.exists());
}
public String getAbsolutePath() 返回此抽象路径名的绝对路径名字符串
public String getPath() 将此抽象路径名转换为路径名字符串
public String getName() 返回此抽象路径名表示的文件或目录的名称
System.out.println(f1.getAbsolutePath());
System.out.println(f1.getPath());
System.out.println(f1.getName());
public String[] list() 返回此抽象路径名表示的目录中的文件和目录的名称字符串数组
File f2=new File("D:\\abc\\arknights");
String[] strarray=f2.list();
for(String str: strarray)
{
System.out.println(str);
}
public File[] listFiles() 返回此抽象路径名表示的目录中的文件和目录的File对象数组
File f2=new File("D:\\abc\\arknights");
File[] fArray=f2.listFiles();
for(File ff:fArray)
{
System.out.println(ff);
}
6 文件遍历
public class xianshiwenjian {
public static void main(String[] args)
{
File f1=new File("D:\\abc");
getAllPath(f1);
}
public static void getAllPath(File f)
{
File[] fArray=f.listFiles();
for(File ff:fArray)
{
if(ff.isDirectory())
{
getAllPath(ff);
}
else
{
System.out.println(ff.getAbsolutePath());
}
}
}
}