字节输入流一次性读取多个字节和遍历

本文展示了一个使用Java进行文件读取的例子,包括按字节读取文件内容及批量读取字节到数组的方法。通过FileInputStream类实现对本地文件系统的访问。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


import java.io.*;
import java.util.Arrays;

public class FuXi2 {
    public static void main(String[] args) throws IOException {
       FileInputStream a = new FileInputStream("C:\\Users\\shanyang\\Desktop\\111");//通过打开一个到实际文件的链接来创建一个FileInputStream,
        //该文件通过文件系统中的路径名name指定
        int a1 =0;

       while( (a1=a.read())!=-1){//read方法会一直读取下一个字节读到末尾时会返回-1值因此可以先赋值后判断
           System.out.println(a1);
       }

       FileInputStream a3 = new FileInputStream(("C:\\Users\\shanyang\\Desktop\\111"));
       byte[] a2=new byte[1002];
        //  字节流一次读取多个字节
//        System.out.println(a3.read(a2));//从输出流中获取一定数量的字节 并存储到缓冲区数组当中
//        System.out.println(Arrays.toString(a2));//打印缓冲区数组里面的字节 默认转化码表对应的编号
//        System.out.println(a3.read(a2));//2
//        System.out.println(Arrays.toString(a2));//[67, 68]
//        System.out.println(a3.read(a2));//如果文件中没有下一个字节了那么就获取成功得到字节的数量  1
//        System.out.println(Arrays.toString(a2));//如果文件中没有下一个字节了那么就获取上一个当前索引的数值  [69, 68]
//        for (int i = 0; i <3 ; i++) {
//            System.out.println(a3.read(a2));//从输出流中获取一定数量的字节 并存储到缓冲区数组当中
//            System.out.println(Arrays.toString(a2));//打印缓冲区数组里面的字节 默认转化码表对应的编号
//
//        }
        while(((a1=a3.read(a2))!=-1)){//111文件里面的字节a2数组里面存没有字节留空
            System.out.println(new String(a2));//打印a2数组里面的数值
        }
        a.close();
        a3.close();






    }
}












评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值