标签:
使用FileOutputStream类写数据到文件中,本来是很简单的实现,但就是生成的文件与原文件大小不一样,排查了一整天,才找到问题原因所在,
writer = new FileOutputStream(savePath);
byte[] buffer = new byte[2048];
while ((len = reader.read(buffer)) > 0){
writer.write(data, 0, size);
注意:1、不要使用write(),而应该使用write(data, 0, size),因为write()默认使用了buffer.length的长度(buffer容量的大小),而不是buffer的实际大小;
2、size应该等于len,而不能等于buffer.length,因为len与buffer.length可能不同
标签:
原文地址:http://www.cnblogs.com/ftrako/p/5149836.html