在 java输入或输出流中,总是有一个1024的字节数组大小.
如下所示:
URL url = new URL(src);
URLConnection connection = url.openConnection();
InputStream is = connection.getInputStream();
OutputStream os = new FileOutputStream("D:\\images"+"\\"+getName(src)+getExtension(src));
byte[] byteArray = new byte[1024];
int len = 0;
while((len = is.read(byteArray))!= -1){
os.write(byteArray, 0, len);
}
is.close();
os.close();
为什么要将此数组初始化为1024?
这称为缓冲,每次在每次循环时都覆盖缓冲区的内容.
只需以块的形式读取文件,而不是一次为文件内容分配内存.