InputStream是输⼊字节流的⽗类,它是⼀个抽象类(⼀般⽤他的⼦类)
INFO
int read()
讲解:从输⼊流中读取单个字节,返回0到255范围内的int字节值,字节数据可直接转换为int类
型, 如果已经到达流末尾⽽没有可⽤的字节,则返回-1
int read(byte[] buf)
讲解:从输⼊流中读取⼀定数量的字节,并将其存储在缓冲区数组buf中, 返回实际读取的字节
数,如果已经到达流末尾⽽没有可⽤的字节,则返回-1
long skip(long n)
讲解:从输⼊流中跳过并丢弃 n 个字节的数据。
int available()
讲解:返回这个流中有多少个字节数,可以把buf数组⻓度定为这个
void close() throws IOException
讲解:关闭输⼊流并释放与该流关联的系统资源
常⻅⼦类
FileInputStream
- 抽象类InputStream⽤来具体实现类的创建对象, ⽂件字节输⼊流, 对⽂件数据以字节的形式进⾏读取操作
- 常⽤构造函数
1 | //传⼊⽂件所在地址 |
- 实战
1 | public static void main(String[] args) throws IOException { |
ByteArrayInputStream 字节数组输⼊流
ObjectInputStream 对象输⼊流
编码⼩知识(节省空间)
- 操作的中⽂内容多则推荐GBK:
GBK中英⽂也是两个字节,⽤GBK节省了空间,
UTF-8 编码的中⽂使⽤了三个字节 - 如果是英⽂内容多则推荐UFT-8:
因为UFT-8⾥⾯英⽂只占⼀个字节
UTF-8编码的中⽂使⽤了三个字节 - 编码知识拓展:
https://baike.baidu.com/item/UTF-8/481798?fr=aladdin
https://baike.baidu.com/item/GBK字库?fromtitle=GBK&fromi
d=481954
说些什么吧!