加入缓冲后文件正确的代码
代码
public void downloadLatestVersion(){
String downloadURL=this.getLatestVersionURL();
try {
byte[] buffers=new byte[10240];
int size=buffers.length;
URL url=new URL(downloadURL);
HttpURLConnection conn=(HttpURLConnection) url.openConnection();
BufferedInputStream reader=new BufferedInputStream(conn.getInputStream());
File dir=new File("D:\\test.jar");
FileOutputStream out=new FileOutputStream(dir);
while((size=reader.read(buffers))>0){
out.write(buffers, 0, size);
}
out.flush();
reader.close();
out.close();
} catch (Exception e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
}
特别说明下BufferedInputStream.read(byte[] b)这个值的返回值有俩两个功能:
1.告诉你这次读入数组用了多少,比如范围为1024的数组,用此方法后返回为456,那就表示他只用了1024里面的前456个,这个值可以用writer方法中,之前出错就是因为没有对这里进行限制,都是存入1024,导致文件出问题的.
2.如果等于-1表示文件读完了.这个貌似还是有不同理解请看
http://blog.csdn.net/shendl/archive/2007/03/26/1542126.aspx
不知道各位觉得比较简单的问题是不会呢还是不屑于回答我
分享到:
相关推荐
文件下在,不是点的URL连接下载,是从系统中得到该文件后读入jsp页面中再次下载,此文件利用 response对象,setContentType(“”),setHeader,ServletOutputStream,out等方法
编写程序,该程序实现打开一个文本文件,每次读取一行内容,将每行作为一个字符串读入,并将字符串输出显示到屏幕上。
最近遇到了PHP远程图片本地话的... * 保存文件到本地 * @param 文件路径 $url * @param 保存本地路径 $savePath * @return string */ function downloadFile($url,$savePath=”) { $fileName = get
(1) 把它们存到磁盘文件中; (2) 将磁盘文件中的第1,3,5个学生数据读入程序,并显示出来; (3) 将第3个学生的数据修改后存回磁盘文件中的原有位置。 (4) 从磁盘文件读入修改后的5个学生的数据并显示出来
编写程序mycp.c,实现从命令行读入文件的复制功能,用原始文件系统调用。
写一个读入一个字符串,把它存入一个链表,并按相反的次序打印的程序的两种解决方案。
易语言API读入文件源码,API读入文件,API_打开文件,API_读入文件数据,API_取文件尺寸
用C语言实现将一个文件读入内存中,编出来发现还是挺简单的
文件的创建,输出数据到文件,读入文件中的数据并显示!
利用C++编写的 读入字符型数组 最后转成TXT格式的文件 主要功能就是文件读入
编程实现从文件dt.txt读入10个int整数值,并显示
用C#和office COM功能(VS2010版本),将Excel的文件里的Sheet1的列表读入,...查询的结果显示在ListBox中,结果可存入另一个Excel文件中,文件名可由用户指定。使用Regex检查Email和学号的合法性(写入Xml、查询时)。
从键盘输入一个字符串,将其中的小写字母全部转换成大写字母,然后输出到一个磁盘文件“test”中保存。输入的字符串以“!”结束.
把Excel文件中的数据读入到DataGrid中
读入一个彩色视频文件并以灰度格式输出这个视频文件
使用C#和office COM功能(VS2010版本),将Excel的文件里的...查询的结果显示在ListBox中,结果可存入另一个Excel文件中,文件名可由用户指定。使用Regex检查Email和学号的合法性(写入Xml、查询时)。 (WPF完成)
从硬盘上读取一文本文件(一篇英语文章),将这篇文章的内容使用适当的数据结构保存起来,能够方便的统计出各个单词出现的频率、和查询特定的单词。 在主函数中实现下列控制命令 openfile <输入文件名> display ...
建立两个磁盘文件f1.dat和f2.dat(1)从键盘输入20个整数,分别存放在两个磁盘文件中(每个文件中放10个整数); (2)从f1.dat读入10个数,然后存放到f2.dat文件原有数据的后面;
1.掌握DOS文件功能调用。 2.熟练汇编语言程序综合设计能力。 实验内容: 编写COM文件格式程序,完成如下功能: 1.从命令行读入文件名。 2.调用DOS功能打开文件,并处理可能发生的错误(如文件不存在等)。 3.将...
易语言API读入文件源码。@易语言资源论坛。