您的位置:首页 > 其它

从服务器下载文件的方法

2012-03-21 15:34 302 查看
public static void downFile(String url,Context cxt) throws Exception{
HttpClient client=new DefaultHttpClient();
HttpPost post=new HttpPost(url);
InputStream res=null;
BufferedOutputStream bos = null;
BufferedInputStream bis=null;
ZipInputStream zis=null;
ZipEntry entry=null;
HttpEntity entity=null;
try{
HttpResponse response = client.execute(post);
if(response.getStatusLine().getStatusCode()==HttpStatus.SC_OK){
entity= response.getEntity();
res=entity.getContent();
}
FileUtils.deleteFiles(cxt.getFilesDir());
bis = new BufferedInputStream(res);
zis= new ZipInputStream(bis);
while ((entry = zis.getNextEntry()) != null) {
int count;
byte data[] = new byte[2048];
bos = new BufferedOutputStream(cxt.openFileOutput(entry.getName(), Context.MODE_WORLD_READABLE|Context.MODE_WORLD_WRITEABLE));
while ((count = zis.read(data)) != -1) {
bos.write(data, 0, count);
}
bos.flush();
data=null;
}
}catch(Exception ex){
ex.printStackTrace();
}finally{
Log.e("downFile", "downFile_finally");
zis.close();
bis.close();
bos.close();
res.close();
entity.consumeContent();
client.getConnectionManager().shutdown();
entry=null;
zis=null;
bis=null;
bos=null;
client=null;
post=null;
cxt=null;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: