Java之字节输入流InputStream

本文详细介绍了Java中字节输入流InputStream的基本用法及其实现细节,包括单个字节读取、字节数组读取等核心操作,并通过实例展示了如何使用FileInputStream进行文件读取。

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

import java.io.*;
/*字节输出流  InputStream  ->abstract(抽象)类型
	该类中有两个接口  
		Closeable -> 关闭(与OutputStream一样不考虑)
	读取的方法:
		1. 读取单个字节:public abstract int read() throw IOException
			返回读取的字节内容,如果没有已经内容则返回 -1
		2. 将读取的数据保存在字节数组里:public int read(byte[]b)  throw IOException
			 返回读取的数据长度;,但是如果读取到结尾了返回 -1
		3. 将读取的数据保存在部分字节数组里:public int read(byte[]b,int off, int len)  throw IOException
			返回读取的部分数据的长度,如果已经读取到结尾返回 -1
*/
public class testDemo{
	public static void main(String args[]) throws IOException{
		//定义要输出的文件的一个路径
		File file  = new File("e:" + File.separator +"Demo"+File.separator+ "text.txt");
		if(file.exists()){//文件存在
			InputStream input = new FileInputStream(file);
			byte data[] = new byte[1024];
			int len = input.read(data); //将部分内容保存在字节数组里面			
		/*	String str = new String(data,0,len);
			System.out.println(str);*/	
			
			//下面单个字节读取(采用while()循环)
			int foot = 0;	//表示字节数组的操作角标
			int temp = 0;	//表示接受每次读取的字节数据	
			while(input.read() != -1){ //读取一个字节并判断是否有内容
				data[foot++] = (byte)temp;
				temp = input.read(); //读取一个字节
			}
			System.out.println(new String(data,0,len));
			input.close();
		}		
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值