关于IO,我有两个问题。
答:在教程和一些 StackOverflow 答案中,他们声称FileInputStream没有缓冲。真的吗 ?
以下代码用于FileInputStream将数据读入字节数组(1024 字节)
class Test {
public static void main(String[] args) throws IOException {
FileInputStream fis = new FileInputStream("./fos.txt");
FileOutputStream fos = new FileOutputStream("./copy.txt");
byte[] buffer = new byte[1024]; // Is this a buffer ?
int len;
while ((len = fis.read(buffer))!= -1) {
fos.write(buffer);
}
fos.close();
fis.close();
}
}
从 API 中,有一行:
public int read(byte b[]) 抛出 IOException
@param b:读取数据的缓冲区。
B、如果都被缓冲了,都将数据放入缓冲区,然后从缓冲区中取数据,究竟是哪里BufferedInputStream比 快FileInputStream?
谢谢
忽然笑
相关分类