IO流之字节流读数据详解

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

//字节流读数据(一次读一个字节数据)
public class FileInputStreamDemo01 {
    public static void main(String[] args) throws IOException {
        // 创建字节输入流对象
        FileInputStream fis = new FileInputStream("D:\\data\\fos.txt");

        int b;
        int a=97;
        System.out.println("a = " + (char)a);//a
        //
        // fis.read():读数据
        // b=fis.read():把读取到的数据赋值给by
        // b != -1:判断读取到的数据是否是-1
        //
        while ((b = fis.read()) != -1) {
            System.out.print((char) b);//hello
        }
        // 释放资源
        fis.close();
    }
}

2、字节流读数据(一次读一个字节数组数据)

//字节流读数据(一次读一个字节数组数据)
public class FileInputStreamDemo02 {
    public static void main(String[] args) throws IOException {
//        一次读一个字节数组的方法
//                - public int read(byte[] b):从输入流读取最多b.length个字节的数据
//                - 返回的是读入缓冲区的总字节数,也就是实际的读取字节个数
        //创建字节输入流对象
        FileInputStream fis = new FileInputStream("D:\\data\\fos.txt");

        byte[] bys = new byte[1024]; //1024及其整数倍
        int len;
        while ((len=fis.read(bys))!=-1) {
            System.out.print(new String(bys,0,len));
        }

        //释放资源
        fis.close();
    }
}

猜你喜欢

转载自blog.csdn.net/m0_63270506/article/details/125722763