【JAVASE基础】字节输入流

4.字节输入流
java.io.InputStream是所有字节输入流的超类:可以读取任何类型文件
●读取字节的方法read
。int read)读取单个字节,读取到流的末尾返回-1
。int read(byteD b)读取字节数组,读取到流的末尾返回-1
43.1 FileInputStream
●构造方法: FileInputStream(File file)
●构造方法: FileInputStream(String file)
。创建字节输入流对象绑定参数就是要读取的数据源文件

package com.sdjzu.IOStream.input;

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

public class InputTest {
    public static void main(String[] args) throws IOException {
        readByte();
    }
    /*
    * 读取单个字节
    * */
    public static void readByte() throws IOException {
        //创建输入流对象,在构造器中写入源文件
        FileInputStream fis=new FileInputStream("D:/1.txt");
        //读取单个字节
        /*int r=fis.read();
        System.out.println("r = " + r);

         r=fis.read();
        System.out.println("r = " + r);*/
        //循环读取单个字节
        int r=0;
        while((r=fis.read())!=-1){
            System.out.println("r = " + r);
        }
        //释放资源
        fis.close();
    }
}

D:\developertool\Java\jdk1.8.0\bin\java.exe "-javaagent:D:\developertool\Java\IntelliJ IDEA 2021.2.2\lib\idea_rt.jar=59942:D:\developertool\Java\IntelliJ IDEA 2021.2.2\bin" -Dfile.encoding=UTF-8 -classpath D:\developertool\Java\jdk1.8.0\jre\lib\charsets.jar;D:\developertool\Java\jdk1.8.0\jre\lib\deploy.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\access-bridge-64.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\cldrdata.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\dnsns.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\jaccess.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\jfxrt.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\localedata.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\nashorn.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\sunec.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\sunjce_provider.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\sunmscapi.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\sunpkcs11.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\zipfs.jar;D:\developertool\Java\jdk1.8.0\jre\lib\javaws.jar;D:\developertool\Java\jdk1.8.0\jre\lib\jce.jar;D:\developertool\Java\jdk1.8.0\jre\lib\jfr.jar;D:\developertool\Java\jdk1.8.0\jre\lib\jfxswt.jar;D:\developertool\Java\jdk1.8.0\jre\lib\jsse.jar;D:\developertool\Java\jdk1.8.0\jre\lib\management-agent.jar;D:\developertool\Java\jdk1.8.0\jre\lib\plugin.jar;D:\developertool\Java\jdk1.8.0\jre\lib\resources.jar;D:\developertool\Java\jdk1.8.0\jre\lib\rt.jar;D:\developertool\Java\idea202122space\JAVAStage\out\production\module12-IOStream com.sdjzu.IOStream.input.InputTest
r = 97
r = 98
r = 99
r = 100
r = 103
r = 106
r = 99
r = 103

Process finished with exit code 0

package com.sdjzu.IOStream.input;

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

public class InputArrayTest {
    public static void main(String[] args) throws IOException {
        method();
    }
    public static void method() throws IOException {
        //创建输入流对象
        FileInputStream fis=new FileInputStream("D:/1.txt");
        byte[] bytes=new byte[2];
        //读取
        //循环
        int r=0;
        while((r=fis.read(bytes))!=-1){
            System.out.print(new String(bytes,0,r));
        }
        //释放资源
        fis.close();
/*        int r=fis.read(bytes);
        System.out.println("r = " + r);
        System.out.println(new String(bytes));
         r=fis.read(bytes);
        System.out.println("r = " + r);
        System.out.println(new String(bytes));
         r=fis.read(bytes);
        System.out.println("r = " + r);
        System.out.println(new String(bytes));*/

    }
}

D:\developertool\Java\jdk1.8.0\bin\java.exe "-javaagent:D:\developertool\Java\IntelliJ IDEA 2021.2.2\lib\idea_rt.jar=62124:D:\developertool\Java\IntelliJ IDEA 2021.2.2\bin" -Dfile.encoding=UTF-8 -classpath D:\developertool\Java\jdk1.8.0\jre\lib\charsets.jar;D:\developertool\Java\jdk1.8.0\jre\lib\deploy.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\access-bridge-64.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\cldrdata.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\dnsns.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\jaccess.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\jfxrt.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\localedata.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\nashorn.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\sunec.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\sunjce_provider.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\sunmscapi.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\sunpkcs11.jar;D:\developertool\Java\jdk1.8.0\jre\lib\ext\zipfs.jar;D:\developertool\Java\jdk1.8.0\jre\lib\javaws.jar;D:\developertool\Java\jdk1.8.0\jre\lib\jce.jar;D:\developertool\Java\jdk1.8.0\jre\lib\jfr.jar;D:\developertool\Java\jdk1.8.0\jre\lib\jfxswt.jar;D:\developertool\Java\jdk1.8.0\jre\lib\jsse.jar;D:\developertool\Java\jdk1.8.0\jre\lib\management-agent.jar;D:\developertool\Java\jdk1.8.0\jre\lib\plugin.jar;D:\developertool\Java\jdk1.8.0\jre\lib\resources.jar;D:\developertool\Java\jdk1.8.0\jre\lib\rt.jar;D:\developertool\Java\idea202122space\JAVAStage\out\production\module12-IOStream com.sdjzu.IOStream.input.InputArrayTest
abcdg
Process finished with exit code 0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值