你了解Java字节输入流吗?下面的文章要给大家介绍的就是这个方面的知识,主要介绍的是InputStream类的常用子类和常用方法,一起来了解一下。
InputStream是Java所有字节输入流类的父类。
字节输入流
InputStream类及其子类的对象表示字节输入流,InputStream类的常用子类如下:
使用InputStream类的方法能够从流中读取一个或一批字节。
下面介绍了InputStream类的常用方法。
1、int read()-从输入流中读取一个8位的字节,并把它转换为0~255的整数,最后返回整数,假如,返回-1,那么就表示已经到了输入流的末尾,为了提高I/O操作的效率,建议尽量使用read()方法的另外两种形式;
2、int read(byte[] b)-从输入流中读取若干字节,并且,将它们保存到参数b指定的字节数组中,这个方法返回读取的字节数,假如,返回-1,那么就表示已经到了输入流的末尾。
3、int read(byte[] b, int off, int len)-从输入流中读取若干字节,并且将它们保存到参数b指定的字节数组中,其中,off指定在字节数组中开始保存数据的起始下标;len指定读取的字节数。这个方法返回实际读取的字节数,假如,返回-1,那么,就表示已经到了输入流的末尾;
4、void close()-关闭输入流,在读操作完成之后,应该关闭输入流,系统将会释放和这个输入流相关的资源,注意,InputStream类本身的close()方法不执行任何操作,但是它的许多子类重写了close()方法;
5、int available()-返回可以从输入流中读取的字节数;
6、long skip(long n)-从输入流中跳过参数n指定数目的字节。该方法返回跳过的字节数;
7、void mark(int readLimit)-在输入流的当前位置开始设置标记,参数readLimit则指定了最多被设置标记的字节数;
8、boolean markSupported()-判断当前输入流是否允许设置标记,是则返回true,否则返回 false;
9、void reset()-将输入流的指针返回到设置标记的起始处;
注意了,在使用mark()方法和reset()方法之前,要先判断该文件系统是否支持这两个方法,以避免对程序造成影响。
以上就是对于InputStream类的常用子类和常用方法的介绍了,更多相关内容请继续来本站的java入门栏目了解吧。
推荐阅读: