黑马程序员——【Java】IO——字节流

来源:互联网 发布:mac wine 软件 编辑:程序博客网 时间:2024/05/16 14:20
------- android培训、java培训、期待与您交流! ----------
  • 字符流:
    • FileReader
    • FileWriter
    • BufferedReader
    • BufferedWriter
  • 字节流:
    • InputStream  OutputStream
import java.io.*;
class FileStream {
    public static void main(String[] args) throws IOException {
        readFile_3();
    }
    //定义刚刚好的缓冲区,放入数据【小心内存溢出】
    public static void readFile_3() throws IOException {
        FileInputStream fis = new FileInputStream("FileStream.txt");
        // int num = fis.available();          //内部含有多少字符,windows中\n\r占用两个字节
        byte[] buf = new byte[fis.available()];// 定义一个刚刚好的缓冲区。不用在循环了。
        fis.read(buf);
        System.out.println(new String(buf));
        fis.close();
    }
  //设定缓冲区大小,放入数据【注意大小设置,小心内存溢出】
    public static void readFile_2() throws IOException {     //缓冲区读取
        FileInputStream fis = new FileInputStream("fos.txt");//设定缓冲区大小
        byte[] buf = new byte[1024];
        int len = 0;
        while ((len = fis.read(buf)) != -1) {
            System.out.println(new String(buf, 0, len));
        }
        fis.close();
    }
  //一次读一个字节
    public static void readFile_1() throws IOException {     //一次读一个字节
        FileInputStream fis = new FileInputStream("fos.txt");
        int ch = 0;
        while ((ch = fis.read()) != -1) {
            System.out.println((char) ch);
        }
        fis.close();
    }
  //创建文件
    public static void writeFile() throws IOException {
        FileOutputStream fos = new FileOutputStream("fos.txt");
        fos.write("abcde".getBytes());
        fos.close();
    }
}


总结自黑马程序员毕向东老师课堂笔记。DEMO可运行

0 0
原创粉丝点击