关于字节输入流InputStream的使用

FileInputStream类称为文件输入流,继承于InputStream类,是进行文件读操作的最基本类;它的作用是将文件中的数据输入到内存中,我们可以利用它来读文件;它属于字节流。

import java.io.*;
public class Test2 {
    public static void method(File file)
    {
        try (InputStream inputStream=new FileInputStream(file)){
            byte[] bytes=new byte[1024];
            Integer i=0;
            while ((i=inputStream.read(bytes,0,bytes.length))!=-1)
            {
                System.out.println(new String(bytes));
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    public static void main(String[] args) {
        method(new File("E:\\Lemon Tree - 王若琳.txt"));
    }
}

一、运用多态的写法新建一个FileInputStream类的对象inputStream,使之与filed对象(即歌词文件)相关联;
二、inputStream对象使用read方法,将歌词文件内容读取到内存中,一次读取bytes.lenth个(即1024)字节长度;
三、当读到文件末尾时,read方法的返回值为-1,因此while循环中加入了逻辑判断语句,用整形i的值保存read方法的返回值,如果没读取完毕,则继续在控制台输出;若读取完毕,则read方法返回-1,循环结束,文件读取完毕;
四、FileInputStream为字节流,读取中文字符可能会出现乱码
歌词文件
打印台输出内容

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值