InputStream

InputStream

FileInputStream:文件字节输入流。
作用:把硬盘文件中的数,读取到内存中使用

import java.io.FileInputStream;
import java.io.IOException;

/*
    FileInputStream:文件字节输入流。
    作用:把银盘文件中的数,读取到内存中使用

    构造方法:
        FileInputStream(String name)
        FileInputStream(File file)
        参数:读取文件的数据源
            String name:文件的路径
            File file:文件
        构造方法的作用:
            1.会创建一个FileInputStream对象
            2.会把FileInputStream对象指定构造方法中要读取的文件
        字节输入流的使用步骤(重点):
            1.使用FileInputStream对象,构造方法中绑定要读取的数据源
            2.使用FileInputStream对象中的方法read,读取文件
            3.释放资源
*/
public class InputStreamDemo01 {
    public static void main(String[] args) throws IOException {
        FileInputStream fis = new FileInputStream("E:\\java\\Utile\\untitled\\src\\cn\\OutputStream\\c.txt");
        //int read()读取文件中的一个字节并返回,读取到文件的末尾返回-1

        int len;
        while((len = fis.read())!=-1){
            System.out.println(len);
        }
        fis.close();
    }
}
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Arrays;

/*
    字节输入流一次读取多个字节的方法
    int read(byte[] b)从输入流中读取一定数量的字节,并将其存储在缓冲区数组b中
*/
public class InputStreamDemo02 {
    public static void main(String[] args) throws IOException {
        FileInputStream fis = new FileInputStream("E:\\java\\Utile\\untitled\\src\\cn\\OutputStream\\b.txt");
        //int read(byte[] b)
        /*byte[] bytes = new byte[2];
        int len = fis.read(bytes);
        System.out.println(len);//2
        System.out.println(Arrays.toString(bytes));//[48, 49]
        System.out.println(new String(bytes));//01*/

        //由于读取需要反复进行,将代码进行优化
        byte[] bytes = new byte[1024];
        int len = 0;//记录每次读取的有效字节个数
        while((len = fis.read(bytes))!=1){
            //使用String类的构造方法,String(byte[] bytes,int offset,int length) 把字节数组的一部分转化为字符串
            //offset:数组开始索引,length:转换的字节个数
            System.out.println(new String(bytes,0,len));
        }
        fis.close();
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值