所在包:java.io
1.文件
Java对文件管理,主要用到了IO包下的File类:主要针对文件及文件目录名称的管理,不包括文件的内容
①声明
- public class File
- implements Serializable, Comparable<File>
②构造方法
//将给定的路径名字字符串转换成抽象路径名来创建一个新的File实例
File 变量名=new File(String pathname);
- //ep1:
- File f1=new File("D:/abc.txt");
//通过将给定的File的uri转化为一个抽象路径名来创建一个新的File实例
File 变量名=new File(URI uri);
- //ep2:
- File f2=new File("abc.txt");
//通过parent路径名字符串和child字符串来创建一个新的File实例
File 变量名=new File(String parent,String child);
- //ep3:
- File f3=new File("D:","abc.txt");
//通过parent抽象路径名和child字符串路径名来创建一个新的File实例
File 变量名=new File(File file,String child);
- //ep4:
- File f4=new File("D:");
- File f5=new File(f4,"abc.txt");
③File类中常用方法
- //如果不存在该目录下的文件,则创建一个新的文件,并返回一个true值,否则,不创建文件,返回一个false
- boolean createNewFile()
- //ep5:
- File f1=new File("D:/","abc.txt");
- try {
- System.out.println("文件"+f1.getName()+"是否创建成功: "+f1.createNewFile());
- } catch (IOException e) {
- e.printStackTrace();
- }
- //判断该文件是否存在:
- boolean exists()
- //ep6:
- System.out.println("文件"+f1.getName()+"是否存在: "+f1.exists());
- //删除文件
- boolean delete()
- //ep7:
- System.out.println("文件"+f1.getName()+"是否删除: "+f1.delete());
- //是否为可读文件
- boolean canRead()
- //ep8:
- System.out.println("文件"+f1.getName()+"是否为可读文件: "+f1.canRead());
- //是否为可写文件
- boolean canWrite()
- //ep9:
- System.out.println("文件"+f1.getName()+"是否为可写文件: "+f1.canWrite());
- //获取文件名
- String getName()
- //ep10:
- System.out.println("文件名:"+f1.getName());
- //返回该目录下(文件夹)的所有文件
- File[] listFiles()
- //ep11:
- File[] list=f1.listFiles();
- for(File item:list){
- System.out.println("========: "+item.getName());
- }
- //重命名文件
- boolean renameTo(File dest)
- //ep12:
- System.out.println("重命名是否成功: "+f1.renameTo(new File("D:/你好.txt")));
- //文件大小(单位:Byte)
- long length()
- //ep13:
- System.out.println("文件"+f1.getName()+"的大小为: "+f1.length());
- //创建抽象路径,只能创建指定目录(只能创建一级)
- boolean mkdir()
- //ep14:
- //第一种情况文件夹a不存在
- File f2=new File("D:/a");
- System.out.println("创建目录:"+f2.mkdir());
- File f1=new File(f2,"abc.txt");
- //文件夹a存在b不存在
- File f3=new File("D:/a/b");
- System.out.println("创建目录:"+f3.mkdir());
- File f4=new File(f3,"abc.txt");
- //创建抽象路径(创建的是文件夹),可以创建指定目录及其所有的父目录(可以创建多级)
- boolean mkdirs()
- //ep15:
- File f2=new File("D:/a/b/c/d");
- System.out.println("创建目录:"+f2.mkdirs());
- File f1=new File(f2,"abc.txt");
完整示例代码:
- package com.ahuiby.test;
- import java.io.File;
- import java.io.IOException;
- public class Test {
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- File f2=new File("D:/a");
- System.out.println("创建目录:"+f2.mkdir());
- File f1=new File(f2,"abc.txt");
- try {
- System.out.println("文件"+f1.getName()+"是否创建成功: "+f1.createNewFile());
- } catch (IOException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- // File[] list=f1.listFiles();
- // for(File item:list){
- // System.out.println("========: "+item.getName());
- // }
- System.out.println("文件"+f1.getName()+"的大小为: "+f1.length());
- System.out.println("重命名是否成功: "+f1.renameTo(new File("D:/你好.txt")));
- System.out.println("文件"+f1.getName()+"是否为可读文件: "+f1.canRead());
- System.out.println("文件"+f1.getName()+"是否为可写文件: "+f1.canWrite());
- System.out.println("文件"+f1.getName()+"是否存在: "+f1.exists());
- // System.out.println("文件"+f1.getName()+"是否删除: "+f1.delete());
- System.out.println("-----------End---------");
- }
- }