InputStream中的read方法

Posted zchok

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了InputStream中的read方法相关的知识,希望对你有一定的参考价值。

 

  • int read() :

    1.从读取流读取的是一个一个字节

    2.返回的是字节的(0-255)内的字节值

    3.读一个下次就自动到下一个,如果碰到-1说明没有值了.

     

  • int read(byte[] b) :

    1.从读取流读取一定数量的字节,如果比如文件总共是102个字节

    2.我们定义的数组长度是10,那么默认前面10次都是读取10个长度

    3.最后一次不够十个,那么读取的是2个

    4.这十一次,每次都是放入10个长度的数组.

   5.返回:表示成功读取的字节数的个数.

 

  • int available():(慎用)

  1.返回从该输入流中可以读取(或跳过)的字节数的估计值,而不会被下一次调用此输入流的方法阻塞。

  2.这个方法可以在读写操作前先得知数据流里有多少个字节可以读取需要注意的是,如果这个方法用在从本地文件读取数据时,一般不会遇到问题,但如果是用于网络操作,会出现问题

  3这是因为网络通讯往往是间断性的,一串字节往往分几批进行发送。

 

 

以上是关于InputStream中的read方法的主要内容,如果未能解决你的问题,请参考以下文章

Java学习之InputStream中read()与read(byte[] b)

InputStream的read方法

java InputStream读取数据问题

java InputStream读取数据问题

InputStream如何读取完整数据

如何在 Android 上解除对 InputStream.read() 的阻止?