代码:(主要针对图片、gif下载无问题)
/** * 下载网络文件 * @param url 请求的文件链接 * @param IsMD5Name 是否MD5加密URL来命名文件名 * @param cachePath 保存的路径 * @return 返回文件的位置path */ public static String getDownloadFile2Cache(String url,boolean IsMD5Name,String cachePath) { String filePath = null; try { HttpGet httpRequest = new HttpGet(url); HttpClient httpclient = new DefaultHttpClient(); HttpResponse response = (HttpResponse) httpclient.execute(httpRequest); HttpEntity entity = response.getEntity(); BufferedHttpEntity bufferedHttpEntity = new BufferedHttpEntity(entity); InputStream is = bufferedHttpEntity.getContent(); String fileName = null; if(IsMD5Name) //是否以MD5命名下载的文件 { fileName = MD5Util.To32MD5(url)+url.substring(url.lastIndexOf(‘.‘)); } else { fileName = url.substring(url.lastIndexOf(‘/‘)+1); } FileOutputStream fos = new FileOutputStream(cachePath+"/"+fileName); byte buf[] = new byte[1024]; int numread; while ((numread = is.read(buf)) != -1) { fos.write(buf, 0, numread); } fos.close(); is.close(); filePath = cachePath+"/"+fileName; } catch (IOException e) { e.printStackTrace(); }catch (Exception e) { e.printStackTrace(); } return filePath; }
时间: 2024-11-06 10:01:59