BufferedInputStream read方法怎么不返回-1
时间: 2024-06-04 15:09:18 浏览: 68
BufferedInputStream 的 read 方法在读取到输入流的末尾时,会返回 -1。但是,如果 BufferedInputStream 内部的缓冲区还有剩余的数据,即使输入流已经到达了末尾,read 方法也会返回缓冲区中的数据,而不是 -1。这是为了确保缓冲区中的所有数据都被正确处理。如果你想要确保读取到输入流的末尾时一定返回 -1,可以使用 InputStream 的 read 方法来代替 BufferedInputStream 的 read 方法。
相关问题
bufferedinputstream.read
bufferedinputstream.read是Java中BufferedInputStream类的一个方法,用于从输入流中读取数据。它会从输入流中读取一个字节,并将其返回。如果已经到达流的末尾,则返回-1。
bufferedinputstream的方法
BufferedInputStream是Java中的一个类,它是对InputStream进行缓存处理的一种流,可以提高读取数据的效率。BufferedInputStream类中常用的方法包括:
1. read():从输入流中读取下一个字节的数据。
2. read(byte[] b, int off, int len):从输入流中读取最多len个字节的数据,并将其存储在缓冲区数组b中,返回实际读取的字节数。
3. skip(long n):从输入流中跳过n个字节的数据。
4. available():返回输入流中还可以读取的字节数。
5. close():关闭输入流。
6. mark(int readlimit):在当前位置做一个标记,最多可以缓存readlimit个字节数据。
7. reset():将输入流的位置重置为最近的mark标记位置。
8. markSupported():判断输入流是否支持mark和reset方法。
阅读全文