J2SE视频笔记(14)

J2SE视频笔记(14)

第三十八讲:Java IO流

IO简介

  • 根据处理数据不同分为字符流和字节流
  • 根据数据流向不同分为输入流和输出流

文件操作File类

以下所指的抽象路径名都指的是new的时候所指定的那个路径名

  • public boolean mkdir(): 创建此抽象路径名指定的目录。
  • 这样就可以在F盘中创建一个叫”java的目录”的文件夹了
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    import java.io.File;
    public class Demo1 {
    public static void main(String[] args) {
    File file=new File("F://java的目录");
    boolean flag=file.mkdir();
    if(flag){
    System.out.println("目录创建成功");
    }
    else{
    System.out.println("目录创建失败");
    }
    }
    }
  • public boolean createNewFile(): 创建一个文件

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    if(flag){
    System.out.println("目录创建成功");
    File file2=new File("F://java的目录//java的文件.txt");
    boolean flag2=file2.createNewFile();
    if(flag2){
    System.out.println("文件创建成功");
    }
    else{
    System.out.println("文件创建失败");
    }
    }
  • public boolean delete(): 删除一个文件或目录,如果要删除一个目录的话,则该目录必须为空才能够删除

  • public boolean exists(): 测试文件或者是目录是否存在
  • public File[] listFiles(): 返回一个数组,这个数组中包含着抽象路径名表示的目录下的所有文件的路径

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    public class Demo2 {
    public static void main(String[] args) {
    // 注意windows下的文件创建要用"//"来表示
    File file=new File("F://Python小甲鱼视频");
    File files[]=file.listFiles();
    for(int i=0;i<files.length;i++){
    System.out.println(files[i]);
    }
    }
    }
  • public boolean isDirectory(): 测试此抽象路径名表示的文件是否是一个目录

  • 综合应用
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    import java.io.File;
    /**
    * 打印文件
    * @author hclmaster
    *
    */
    public class Demo3 {
    public static void listFile(File file){
    if (file!=null) {
    // 如果是目录
    if(file.isDirectory()){
    // listFiles方法表示这些抽象路径中的文件
    File files[]=file.listFiles();
    if(files!=null){
    for(int i=0;i<files.length;i++){
    listFile(files[i]); //递归调用!!!
    }
    }
    } else{
    // 如果是文件,则直接打印文件的路径
    System.out.println(file);
    }
    }
    }
    public static void main(String[] args) {
    File file=new File("F://Python小甲鱼视频");
    listFile(file);
    }
    }

热评文章