Java学习笔记11

IO流

File

File类概述和构造方法

在这里插入图片描述
在这里插入图片描述

File类创建功能

在这里插入图片描述
在这里插入图片描述

File类判断和获取功能

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

File类删除功能

在这里插入图片描述
在这里插入图片描述

递归

在这里插入图片描述
在这里插入图片描述

案例:遍历目录

在这里插入图片描述
在这里插入图片描述

字节流

IO流概述和分类

在这里插入图片描述
在这里插入图片描述

字节流写数据

在这里插入图片描述
在这里插入图片描述

字节流写数据的3种方式

在这里插入图片描述
在这里插入图片描述

字节流写数据的两个小问题

在这里插入图片描述在这里插入图片描述

字节流写数据加入异常处理

在这里插入图片描述
在这里插入图片描述

字节流读数据(一次读一个字节数据)

在这里插入图片描述
在这里插入图片描述

字节缓冲流

在这里插入图片描述
在这里插入图片描述

字符流

为什么会出现字符流

在这里插入图片描述

编码表

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

字符串中的编码解码问题

在这里插入图片描述
在这里插入图片描述

字符流中的编码解码问题

在这里插入图片描述
在这里插入图片描述

字符流写数据的5种方式

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

字符流读数据的2种方式

在这里插入图片描述
在这里插入图片描述

案例:复制Java文件

在这里插入图片描述
在这里插入图片描述

字符缓冲流

在这里插入图片描述

public class MainSystem {
    public static void main(String[] args) throws IOException {
        //BufferedWriter bw=new BufferedWriter(new FileWriter("E:\\IDEAprojects\\HelloWorld\\test2\\xx.txt"));
        //bw.write("hello\r\n");
        //bw.write("world\r\n");
        //bw.close();
        BufferedReader br=new BufferedReader(new FileReader("E:\\IDEAprojects\\HelloWorld\\test2\\xx.txt"));
        //一次读取一个字符数据
            //int ch;
            //while ((ch=br.read())!=-1){
            //    System.out.print((char)ch);
            //}
        //一次读取一个字符数组数据
        int len;
        char[] chs=new char[1024];
        while ((len=br.read(chs))!=-1){
            System.out.print(new String(chs,0,len));
        }
    }
}

案例:复制Java文件(字符缓冲流改进版)

在这里插入图片描述

public class MainSystem {
    public static void main(String[] args) throws IOException {
        //创建字符缓冲输入流对象
        BufferedReader br=new BufferedReader(new FileReader("E:\\IDEAprojects\\HelloWorld\\test2\\src\\com\\lwh\\test\\Student.java"));
        //创建字符缓冲输出流对象
        BufferedWriter bw=new BufferedWriter(new FileWriter("E:\\IDEAprojects\\HelloWorld\\test2\\src\\com\\lwh\\test\\Copy.java"));
        //读取数据,复制文件
        //一次读取一个字符数据
        //int ch;
        //while((ch=br.read())!=-1){
        //    bw.write(ch);
        //}
        //一次读取一个字符数组的数据
        char[] chs=new char[1024];
        int len;
        while ((len=br.read(chs))!=-1){
            bw.write(chs,0,len);
        }
        //释放资源
        bw.close();
        br.close();
    }
}

字符缓冲流特有功能

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

复制Java文件(字符缓冲流特有功能改进版)

在这里插入图片描述

public class MainSystem {
    public static void main(String[] args) throws IOException {
        //创建字符缓冲输入流对象
        BufferedReader br=new BufferedReader(new FileReader("E:\\IDEAprojects\\HelloWorld\\test2\\src\\com\\lwh\\test\\Student.java"));
        //创建字符缓冲输出流对象
        BufferedWriter bw=new BufferedWriter(new FileWriter("E:\\IDEAprojects\\HelloWorld\\test2\\src\\com\\lwh\\test\\Copy.java"));
        //读取数据,复制文件
        //使用字符缓冲流特有功能实现
        String line;
        while((line=br.readLine())!=null){
            bw.write(line);
            bw.newLine();
            bw.flush();
        }
        //释放资源
        bw.close();
        br.close();
    }
}

IO流小结

在这里插入图片描述
在这里插入图片描述

案例:集合到文件

在这里插入图片描述

public class MainSystem {
    public static void main(String[] args) throws IOException {
        ArrayList<String> array= new ArrayList<String>();
        array.add("hello");
        array.add("world");
        array.add("java");
        BufferedWriter bw=new BufferedWriter(new FileWriter("test2/xx.txt"));
        for(String s:array){
            bw.write(s);
            bw.newLine();
            bw.flush();
        }
        bw.close();
    }
}

案例:文件到集合

在这里插入图片描述

public class MainSystem {
    public static void main(String[] args) throws IOException {
        //创建字符缓冲流输入对象
        BufferedReader br=new BufferedReader(new FileReader("test2/xx.txt"));
        //创建ArrayList集合对象
        ArrayList<String> array =new ArrayList<String>();
        String line;
        while ((line=br.readLine())!=null){
            //把读取到的字符串数据存储到集合中
            array.add(line);
        }
        //释放资源
        br.close();
        //遍历集合
        for(String s:array){
            System.out.println(s);
        }
    }
}

复制文件的异常处理

在这里插入图片描述

特殊操作流

标准输入输出流

在这里插入图片描述
在这里插入图片描述

打印流

在这里插入图片描述
在这里插入图片描述

复制Java文件(字符打印流)

在这里插入图片描述

对象序列化流

概念

在这里插入图片描述

对象序列化流

在这里插入图片描述

对象反序列化流

在这里插入图片描述

例子

在这里插入图片描述
序列化:
在这里插入图片描述
反序列化:
在这里插入图片描述

对象序列化的三个问题

在这里插入图片描述
在这里插入图片描述

Properties

概述

在这里插入图片描述
在这里插入图片描述

Properties的特有方法

在这里插入图片描述
在这里插入图片描述

Properties和IO流结合的方法

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

案例:游戏次数

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值