急急急!想找一个java 写的文件下载程序(最好用url类),那位朋友有这方面的程序或原码?100分必送? http://sourceforge.net/projects/weblech/ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 public boolean downLoadFile2(String fileurl, String savepath){//Things need to do://Set connection timeout//Try more times to download//Catch a general Exception is not so good//...try{int httpStatusCode;URL url =new URL(fileurl);URLConnection conn = url.openConnection();conn.connect();HttpURLConnection httpconn =(HttpURLConnection)conn;httpStatusCode =httpconn.getResponseCode();if(httpStatusCode!=HttpURLConnection.HTTP_OK){//HttpURLConnection return an error codeSystem.out.println("Connect to "+fileurl+" failed,return code:"+httpStatusCode);return false;}int filelen = conn.getContentLength();InputStream is = conn.getInputStream();byte[] tmpbuf=new byte[1024];File savefile =new File(savepath);if(!savefile.exists())savefile.createNewFile();FileOutputStream fos = new FileOutputStream(savefile);int readnum = 0;if(filelen<0)//for http://www.csdn.net/expert/topic/204/204361.shtm, conn.getContentLength() return -1.{while(readnum>-1){readnum = is.read(tmpbuf);if(readnum>0)fos.write(tmpbuf,0,readnum);}}else{int readcount =0;while(readcount<filelen&&readnum!=-1){readnum=is.read(tmpbuf);if(readnum>0){fos.write(tmpbuf,0,readnum);readcount =readcount +readnum;}}if(readcount<filelen){System.out.println("download error");is.close();fos.close();savefile.delete();return false;}}fos.flush();fos.close();is.close();}catch(Exception e){e.printStackTrace();return false;}return true;} masterz,你好,你的程序很好,不过我发现有一个缺点,如果文件大的时候,还是下载不下来,有无办法能夹点诸如网络蚂蚁的那种功能? 小孩围成一个圈,每隔几个就出局,最后剩下谁的问题 java新手问各位前辈 hibernate 如何一个字段对应多个表? (急)JAVA的程序,请大家指教,编译通不过~~ 新手求怎么在下面代码中插入运行后的背景图片 急!!!!!! 公司要做一个招生网站(我希望有详细设计文档) jacob如何在word中插入分节符 我想下载《JAVA程序员参考大全》电了书,到那里可以下载,给个地址 关于 事件监听器注册的有关问题 一个大的信息系统完全用rmi实现可行吗,合理吗? 关于从HTML页面上传文件的问题: 怎样用java来实现文件下载?
{//Things need to do:
//Set connection timeout
//Try more times to download
//Catch a general Exception is not so good
//...
try
{
int httpStatusCode;
URL url =new URL(fileurl);
URLConnection conn = url.openConnection();
conn.connect();
HttpURLConnection httpconn =(HttpURLConnection)conn;
httpStatusCode =httpconn.getResponseCode();
if(httpStatusCode!=HttpURLConnection.HTTP_OK)
{//HttpURLConnection return an error code
System.out.println("Connect to "+fileurl+" failed,return code:"+httpStatusCode);
return false;
}
int filelen = conn.getContentLength();
InputStream is = conn.getInputStream();
byte[] tmpbuf=new byte[1024];
File savefile =new File(savepath);
if(!savefile.exists())
savefile.createNewFile();
FileOutputStream fos = new FileOutputStream(savefile);
int readnum = 0;
if(filelen<0)//for http://www.csdn.net/expert/topic/204/204361.shtm, conn.getContentLength() return -1.
{
while(readnum>-1)
{
readnum = is.read(tmpbuf);
if(readnum>0)
fos.write(tmpbuf,0,readnum);
}
}
else
{
int readcount =0;
while(readcount<filelen&&readnum!=-1)
{
readnum=is.read(tmpbuf);
if(readnum>0)
{
fos.write(tmpbuf,0,readnum);
readcount =readcount +readnum;
}
}
if(readcount<filelen)
{
System.out.println("download error");
is.close();
fos.close();
savefile.delete();
return false;
}
}
fos.flush();
fos.close();
is.close();
}
catch(Exception e)
{
e.printStackTrace();
return false;
}
return true;
}