问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

求android开发中的实现上传与下载的代码,最好可以给个完整教程

发布网友 发布时间:2022-06-02 03:45

我来回答

1个回答

热心网友 时间:2023-10-27 16:19

下载图片核心代码:
protected Bitmap doInBackground(String... params) {
// TODO Auto-generated method stub

Bitmap bitmap=null;
try{
URL url=new URL(params[0]);
HttpURLConnection connection=(HttpURLConnection)url.openConnection();
connection.connect();
int MAX=connection.getContentLength();
InputStream inputStream=connection.getInputStream();
ByteArrayOutputStream outputStream=new ByteArrayOutputStream();
byte []buf=new byte[1024];
int len=0;
while((len=inputStream.read(buf))!=-1){
outputStream.write(buf, 0, len);

}
bitmap=BitmapFactory.decodeByteArray(outputStream.toByteArray(), 0, MAX);
inputStream.close();

}catch(Exception e){
//TODO
System.out.println("loading images failed");
}
return bitmap;

}
上传图片核心代码:
private void uploadFile()
{
String end = "\r\n";
String twoHyphens = "--";
String boundary = "*****";

try
{
URL url =new URL(actionUrl+"upload");
HttpURLConnection con=(HttpURLConnection)url.openConnection();
/* 允许Input、Output,不使用Cache */
con.setDoInput(true);
con.setDoOutput(true);
con.setUseCaches(false);
/* 设置传送的method=POST */
con.setRequestMethod("POST");
/* setRequestProperty */
con.setRequestProperty("Connection", "Keep-Alive");
con.setRequestProperty("Charset", "UTF-8");
con.setRequestProperty("Content-Type",
"multipart/form-data;boundary="+boundary);
/* 设置DataOutputStream */
DataOutputStream ds =
new DataOutputStream(con.getOutputStream());
ds.writeBytes(twoHyphens + boundary + end);
ds.writeBytes("Content-Disposition: form-data; " +
"name=\"file1\";filename=\"" +
reg_username.getText().toString()+".jpg" +"\"" + end);
ds.writeBytes(end);
imageView.buildDrawingCache();
Bitmap bmp = imageView.getDrawingCache();
ByteArrayOutputStream baos=new ByteArrayOutputStream();
bmp.compress(Bitmap.CompressFormat.JPEG, 100, baos);
byte[] content=baos.toByteArray();
ds.write(content, 0, content.length);
ds.writeBytes(end);
ds.writeBytes(twoHyphens + boundary + twoHyphens + end);
ds.flush();

/* 取得Response内容 */
InputStream is = con.getInputStream();
int ch;
StringBuffer b =new StringBuffer();
while(( ch = is.read())!= -1 )
{
b.append((char)ch );
}

JSONObject object=new JSONObject(b.toString());
if(TextUtils.equals(object.getString("message"), "ok")){
upload_flag=true;
}else{
upload_flag=false;
}

/* 关闭DataOutputStream */
ds.close();
}
catch(Exception e)
{
upload_flag=false;
}
}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
手机导航用电脑软件哪个好导航软件哪个最准确 我要地图网使用我要地图网轻松查询地图信息 装配行业MES系统四大车间管理活动介绍 王者荣耀S14狂铁怎么玩_王者荣耀S14狂铁出装铭文推荐 沅陵县有姓文的分布在那个地方, 汨罗一中在省排名 汨罗高中有哪些? 湖南省岳阳市汨罗有哪些高中 新生儿脊膜膨出后遗症 在深圳硬脊膜膨出手术后大小便失禁怎么办? 初级安卓开发,求教一段代码的解释。 商丘学院近年录取分数线,2013理,谢谢。 商丘学院往年专升本分数线(电气自动化专业) 商丘学院分数线 苹果手机接图片的文件夹在哪里? 初学计算机,谁能说一下JS,HTML,PHP,LINUX,JAVA等学科的区别与联系,谢谢~ 蜂蜜波美度的简介 蜂蜜波美度啥意思啊 蜂蜜的<波美度>是什么? 2009年河南艺术设计类专升本哪个学校好? 河南省电脑艺术设计类专业专升本选择哪个学校的哪个专业好 河南专升本学校有哪一些好考?(我报的是艺术设计) 河南哪些院校要艺术专升本 河南专升本艺术设计专业哪个学校好? 海信新风空调那个自带新风系统,真的好么?可以保障室内空气高效流通么... 再造耳修复哪个医生做的好? 兔子耳朵被咬掉一小块,有什么办法让耳朵长回来? 大女十二岁,出生时有一只耳朵耳坠缺一角,请问可以整容修复吗 W7声卡驱动 剑网3实体玲珑密保锁我已经绑定了帐号,现在上新的服务器去玩没有玲珑囊的30格包了. 微信怎么查多少个号绑定多少个银行卡?与注销功能在哪查? 电商包含了哪些行业? 一世倾城4苏小暖结局 邪王追妻到现在完结没啊!??等的好急人,我想看完结的啊啊啊! 1万元日利率0.0685%如何算出日利息 山东曲阜尹氏辈分 谁可以给我尹氏辈分谱,重谢 尹氏辈分排列 安徽淮南陈家岗姓尹的辈分问题 尹纪什么是多少世 姓尹的明字辈上面是什么辈份尹氏族谱辈分 辽宁 尹姓,小时好像听过家谱: 湖南怀化尹氏字辈有:有、秀、承,请问后面还有哪些 尹氏家族的!我们只有五个字辈!元志有道德!后面就没有了!请问后面应该怎 ... 尹氏的辈分有哪20个?怎么排列的?我燕字怎么排 徐州丰县尹氏家谱字辈排列 江苏淮安尹氏家谱,淮安尹氏辈分排序!!详细!! 尹氏 我业字辈 父亲是 俊 字辈 爷爷 是兴 字辈如题 谢谢了 尹氏家谱向字辈下来是什么辈 尹氏家谱字辈排列里面有"晓"字辈吗