先祝大家中秋节快乐,为大家介绍下中秋篇Android文件下载与存储实例,感谢大家的支持哈!...

本文介绍了一个用于HTTP文件下载的Java类封装,包括文本文件和MP3文件的下载方法。文本文件下载通过读取流并拼接字符串实现,MP3文件下载则检查文件是否存在并写入SD卡。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1,为了下次使用的更方便我封装了一个文件与媒体下载的HttpDownloader类的代码如下:

// 此方法是为Text文件下载

public class HttpDownloader{

//声明url对象,为传递地址使用

private URL url=null;

//文件下载封装方法

public String download(String urlStr){

//声明StringBuffer对象

StringBuffer sb=new StringBuffer();

//为读取数据储存使用

String line =null;

//声明读取数据的对象

BufferedReader buffer =null;

try{

url =new URL(urlStr);

//通过HttpURLConnetion方法获取文件下载对象

HttpURLConnection urlConn=(HttpURLConnection)url.openConnection();

//通过流的方式得到文件下载内容,并存储在buffer中

buffer=new BufferedReader(new InputStreamReader(urlConn.getInputStream()));

//循环读取存入

while(line=buffer.reaLine()!=null){

sb.append(line);

}

}catch(Exception e){

e.printStackTrace();

}finally{

try{

 //关闭流,为了节约内存

buffer.close();

}catch(Exception e){

e.printStackTrace();

}

}

return sb.toString();

}

//为MP3文件下载封装的方法,该方法返回是整形,-1:代表文件下载出错,0:代表文件下载成功,1:代表文件已经存在

public int downFile(String urlStr.String path,String fileName){

//声明InputSream对象

InputStream inputStream =null;

try{

//声明自定封装的SD卡的类

FileUtils fileUtils =new FileUtils();

//已经isFileEXist封装类的文件方法,用处是判断是否有此文件

if(fileUtils.isFileExist(path+fileName)){

return 1;

}else{

//调用下面声明的getInputStreamFronUrl方法

inputStream=getInputStreamFronUrl(urlStr);

//调用自定声明的write2SDFromInput方法,用处是写入SD卡

File resultFile =fileUtils.write2SDFromInput(pach,fileName,inputStream);

if(resultFile ==null){

return -1;

}

}

}catch(Exception e){

e.printStackTrace();

return -1;

}

finally{

try{

inputStream.close();

}

catch(Exception e){

e.printStackTrace();}

}

}

return 0;

}

//单一的定义一个获取文件内容的方法,可以使程序更好维护和修改

public InputStream getInputStreamFronUrl(String urlStr)

throws MalformedURLException,IOException{

url =new URL(urlStr);

HttpURLConnection urlConn=(HttpURLConnection)url.openConnection();

InputStream inputStream=urlConn.getInputStream();

return inputStream;

}

}

}

今天的内容就写到这里拉,明天为大家传入SD卡类的使用,谢谢大家,祝大家中秋快乐!

转载于:https://www.cnblogs.com/WangWeiDa/archive/2011/09/12/2173928.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值