Android中文件下载类封装
来源:互联网 发布:西雅图房价 知乎 编辑:程序博客网 时间:2024/05/21 23:52
原文地址:http://mwga.net.blog.163.com/blog/static/106456728201131333050945/
1. 普通文本类型的文件下载:根据URL下载文件,前提是这个文件当中的内容是文本,函数的返回值就是文本中的内容,步骤如下:
A:创建一个URL对象
B:通过URL对象的openConnection()方法,得到一个HttpURLConnection对象
C:通过HttpURLConnection连接对象的getInputStream()方法得到InputStream字节流.
D:从InputStream当中读取数据
Java代码:返回文本类型文件的字符串形式。
public String DownLoadText(String urlStr) {
String resultString=null;
BufferedReader bufferedReader=null;
StringBuffer sbBuffer=new StringBuffer();
try {
//先获取URL对象;
url=new URL(urlStr);
//建立一个Http连接的对象;
HttpURLConnection httpConn=(HttpURLConnection)url.openConnection();
//使用IO流读取数据;
bufferedReader=new BufferedReader(newInputStreamReader(httpConn.getInputStream()));
//循环输出每一行;
while ((resultString=bufferedReader.readLine())!=null) {
sbBuffer.append(resultString);
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally
{
try {
//关闭。
bufferedReader.close();
} catch (Exception e2) {
e2.printStackTrace();
}
}
return sbBuffer.toString();
}
2. 通用文件下载。
/**
* 下载通用文件,-1:代表下载出错;0:代表下载成功;1:代表文件已存在;
*/
public int downLoadFile(String urlString,String dirpath,String filepath) {
int state=0;
InputStream inputStream=null;
//得到文件操作类的对象(上节中提到的几个方法);
FileUnits units=new FileUnits();
try{
//先判断要下载的文件是否存在
if(units.checkFileExists(dirpath+filepath))
{
state=1;
}
else{
//根据Url得到InputStream字节流,此方法附下;
inputStream=getInputStreamByUrl(urlString);
//调用上节中SD卡文件操作的方法来将InputStream写入到SD中去。
File resultFile= units.writeStreamToSDCard(dirpath, filepath, inputStream);
if (resultFile==null) {
state=-1;
}
}
}
catch (Exception e) {
e.printStackTrace();
state=-1;
}
finally
{
try {
inputStream.close();
} catch (Exception e2) {
e2.printStackTrace();
}
}
return state;
}
/**
* 根据url得到输入流;
* urlString 是下载链接地址
*/
public InputStream getInputStreamByUrl(String urlString) throws IOException {
url=new URL(urlString);
HttpURLConnection urlConnection=(HttpURLConnection)url.openConnection();
return urlConnection.getInputStream();
}
- Android中文件下载类封装
- Android中文件下载类封装
- android中文件下载
- android中文件简单下载
- .NET中文件下载
- NET中文件下载
- Web中文件下载
- . net中文件下载
- .net中文件下载
- THinkPHP中文件下载
- struts2中文件下载
- JavaWeb中文件下载
- android 解决下载时文件名中文和空格问题
- android 解决下载时文件名中文和空格问题
- Asp.Net中文件下载
- JSP中文件下载(转贴)
- ajax.net 中文件下载
- Struts2 中文件的下载
- C#之Excel文件读取
- 《MongoDB权威指南》学习整理----MongoDB进阶指南
- 21_是实十几个傅放弃呵东
- jquery较验组织机构编码
- 看看魔术师的戏法
- Android中文件下载类封装
- Java数字字符串如何转化为数字数组
- BGP修改NEXT_HOP下一跳属性值的几种方法
- 程序员的人品问题:自我、情绪化与不善沟通
- 《MongoDB权威指南》学习整理----MongoDB安装与监控
- JDK5.0新特性:For—Each增强型for循环
- 鲁迅笔名
- 转:Oracle中dual表的用途介绍
- 25_是实十几个傅放弃呵东