有关如何将文件上传到先说说SD卡:

  1. package com.example.lesson05_02;
  2.  
  3. import java.io.File;
  4. import java.io.FileNotFoundException;
  5.  
  6. import org.apache.http.Header;
  7.  
  8. import android.app.Activity;
  9. import android.os.Bundle;
  10. import android.text.TextUtils;
  11. import android.view.View;
  12. import android.view.View.OnClickListener;
  13. import android.widget.Button;
  14. import android.widget.EditText;
  15. import android.widget.Toast;
  16.  
  17. import com.loopj.android.http.AsyncHttpClient;
  18. import com.loopj.android.http.AsyncHttpResponseHandler;
  19. import com.loopj.android.http.RequestParams;
  20.  
  21. public class MainActivity extends Activity implements OnClickListener{
  22.  
  23. private EditText et_file;
  24. private Button btn_upload;
  25. private EditText et_username;
  26. @Override
  27. protected void onCreate(Bundle savedInstanceState) {
  28. super.onCreate(savedInstanceState);
  29. setContentView(R.layout.activity_main);
  30. btn_upload = (Button) findViewById(R.id.btn_upload);
  31.  
  32. et_file = (EditText) findViewById(R.id.et_file);
  33. et_username = (EditText) findViewById(R.id.edit_username);
  34. btn_upload.setOnClickListener(this);
  35. }
  36. @Override
  37. public void onClick(View v) {
  38. int id =v.getId();
  39. switch (id) {
  40. case R.id.btn_upload:
  41. String path =et_file.getText().toString();
  42. if(TextUtils.isEmpty(path.trim())){
  43. Toast.makeText(this, "上传的文件不能为空", Toast.LENGTH_LONG).show();
  44. }else{
  45. //异步客户端对象
  46. AsyncHttpClient client = new AsyncHttpClient();
  47. String url="http://172.16.237.144:8080/Login/UploadServlet";
  48. //封装文件上传的參数
  49. RequestParams params = new RequestParams();
  50. //依据路径创建文件
  51. File file = new File(path);
  52. try {
  53. //放入文件
  54. params.put("profile_picture", file);
  55. //1、改动这个名称,看是否能上传成功
  56. //2、加入上传者的姓名
  57. } catch (FileNotFoundException e) {
  58. System.out.println("文件不存在");
  59. e.printStackTrace();
  60. }
  61. client.post(url, params,new AsyncHttpResponseHandler(){
  62.  
  63. @Override
  64. public void onFailure(int statusCode, Header[] headers, byte[] responseBody,
  65. Throwable error) {
  66. error.printStackTrace();
  67. }
  68.  
  69. @Override
  70. public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {
  71. Toast.makeText(MainActivity.this, "文件上传成功!
  72.  
  73. ", 1).show();
  74. }
  75.  
  76. });
  77. }
  78.  
  79. break;
  80.  
  81. default:
  82. break;
  83. }
  84.  
  85. }
  86. }

然后分别使用AsynvHttpClient 还有smart-image-view来完毕图片查看器:

//不适用SMART IMAGE之前:

  1. /*
  2. public void sendGetImg(View v){
  3. int id= v.getId();
  4. switch (id) {
  5. case R.id.btn_img:
  6.  
  7. String url = et_url.getText().toString();
  8. //发送网络请求
  9. AsyncHttpClient client = new AsyncHttpClient();
  10.  
  11. client.get(url,new AsyncHttpResponseHandler(){
  12.  
  13. @Override
  14. public void onFailure(int statusCode, Header[] headers, byte[] responseBody,
  15. Throwable errors) {
  16. errors.printStackTrace();
  17. }
  18.  
  19. @Override
  20. public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {
  21. if(statusCode==200){
  22. //创建字节工厂对象N
  23. BitmapFactory bitmapFactory = new BitmapFactory();
  24. @SuppressWarnings("static-access")
  25. Bitmap bitmap = bitmapFactory.decodeByteArray(responseBody, 0, responseBody.length);
  26. iv_img.setImageBitmap(bitmap);
  27. }
  28. }
  29.  
  30. });
  31. break;
  32.  
  33. default:
  34. break;
  35. }
  36. }
  37. */
  38. //使用smart image包之后
  39. public void sendGetImg(View v){
  40. int id= v.getId();
  41. switch (id) {
  42. case R.id.btn_img:
  43. String url = et_url.getText().toString();
  44. iv_img.setImageUrl(url, R.drawable.ic_launcher,R.drawable.ic_launcher);
  45. break;
  46.  
  47. default:
  48. break;
  49. }
  50. }

版权声明:本文博主原创文章,博客,未经同意不得转载。

安卓培训第五天---上传文件SD卡的更多相关文章

  1. 《手把手教你》系列技巧篇(五十三)-java+ selenium自动化测试-上传文件-上篇(详细教程)

    1.简介 在实际工作中,我们进行web自动化的时候,文件上传是很常见的操作,例如上传用户头像,上传身份证信息等.所以宏哥打算按上传文件的分类对其进行一下讲解和分享. 2.为什么selenium没有提供 ...

  2. 《手把手教你》系列技巧篇(五十四)-java+ selenium自动化测试-上传文件-中篇(详细教程)

    1.简介 在实际工作中,我们进行web自动化的时候,文件上传是很常见的操作,例如上传用户头像,上传身份证信息等.所以宏哥打算按上传文件的分类对其进行一下讲解和分享. 2.为什么selenium没有提供 ...

  3. 《手把手教你》系列技巧篇(五十五)-java+ selenium自动化测试-上传文件-下篇(详细教程)

    1.简介 在实际工作中,我们进行web自动化的时候,文件上传是很常见的操作,例如上传用户头像,上传身份证信息等.所以宏哥打算按上传文件的分类对其进行一下讲解和分享. 2.为什么selenium没有提供 ...

  4. java 网络编程(五)Socket多线程上传文件

    客户端: package cn.sasa.socketUploadFileDemo; import java.io.FileInputStream; import java.io.IOExceptio ...

  5. 菜鸟学SSH(五)——Struts2上传文件

    上传文件在一个系统当中是一个很常用的功能,也是一个比较重要的功能.今天我们就一起来学习一下Struts2如何上传文件. 今天讲的上传文件的方式有三种: 1,以字节为单位传输文件: 2,Struts2封 ...

  6. selenium测试(Java)--上传文件(十五)

    1. 当页面中是通过input标签实现上传功能时,可以使用selenium来上传功能. 如下: package com.test.upload; import java.io.File; import ...

  7. ASP.NET、JAVA跨服务器远程上传文件(图片)的相关解决方案整合

    一.图片提交例: A端--提交图片 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { string u ...

  8. Uploadify 上传文件插件详解

    Uploadify 上传文件插件详解 Uploadify是JQuery的一个上传插件,实现的效果非常不错,带进度显示.不过官方提供的实例时php版本的,本文将详细介绍Uploadify在Aspnet中 ...

  9. C# 通过WebService方式 IIS发布网站 上传文件到服务器

    应用场景:要将本地的文件 上传到服务器的虚拟机上 网络环境:公司局域网(如下图中第二种) 开发环境:VS2010 服务器环境:WinServer2008    虚拟机环境:WinServer2008 ...

随机推荐

  1. NOJ1184 失落的邮票 哈希表

    意甲冠军 我们共收集N邮票.现在失去了2张,剩下N-2张-..原集邮收集了所有对.因此,找到什么两枚邮票是一个.它们输出. (确定缺少邮票是不一样的) 思路 由于编号比較大,能够用hash表压缩成数组 ...

  2. HttpAsyncClient 做并发长连接的一个实例

    HttpAsyncClient 做并发长连接的一个实例 import java.util.concurrent.CountDownLatch; import org.apache.http.HttpR ...

  3. OpenStack及其构成简介1

    第一部分 OpenStack及其构成简介 一.云计算   云计算是一种计算模型,它将诸如运算能力.存储.网络和软件等资源抽象成为服务,以便让用户通过互联网远程享用,付费的形式也如同传统公共服务设施一样 ...

  4. atitit查询表改动表字段没反应--解锁锁定的表

    atitit查询表改动表字段没反应--解锁锁定的表 查询表改动表字段没反应 要是使用gui 没反应,最好使用cmd 方式,不卉不个gui 锁上.. ALTER TABLE t_mb_awardweix ...

  5. UVA 11490 - Just Another Problem(数论)

    11490 - Just Another Problem option=com_onlinejudge&Itemid=8&page=show_problem&category= ...

  6. ECshop 表结构

    -- 表的结构 `ecs_account_log`CREATE TABLE IF NOT EXISTS `ecs_account_log` (`log_id` mediumint(8) unsigne ...

  7. 中文字符集编码Unicode ,gb2312 , cp936 ,GBK,GB18030

    中文字符集编码Unicode ,gb2312 , cp936 ,GBK,GB18030 cp936是微软自己发布的用在文件系统中的编码方式.而bg2312是中国国家标准.我明白mount -t vfa ...

  8. VBA怎样统计同一类型的数据的总和

    今天是2014-11-01 是周末,忙了一周了,最终能够闲下来了.想起近期工作用到的VBA的一个场景,结合VBA的数组,所以就想试试看.结果还好.出来了.这年头,又玩起了VB了,经过多时才接受了VB的 ...

  9. POJ 2182 Lost Cows(牛排序,线段树)

    Language: Default Lost Cows Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 9207   Acce ...

  10. ReactNavtive框架教程(2)

    , alignItems: 'center' } }); 标准的 CSS 属性.尽管用CSS比在IB设置UI样式的可视化要差.但总比在viewDidLoad()方法中用代码写要好一些. 然后增加下面代 ...