zoukankan      html  css  js  c++  java
  • 安卓培训第五天---上传文件SD卡

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

    package com.example.lesson05_02;
    
    import java.io.File;
    import java.io.FileNotFoundException;
    
    import org.apache.http.Header;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.text.TextUtils;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.Toast;
    
    import com.loopj.android.http.AsyncHttpClient;
    import com.loopj.android.http.AsyncHttpResponseHandler;
    import com.loopj.android.http.RequestParams;
    
    public class MainActivity extends Activity implements OnClickListener{
    
     private EditText et_file;
     private Button btn_upload;
     private EditText et_username;
     @Override
     protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      btn_upload = (Button) findViewById(R.id.btn_upload);
      
      et_file = (EditText) findViewById(R.id.et_file);
      et_username = (EditText) findViewById(R.id.edit_username);
      btn_upload.setOnClickListener(this); 
     }
     @Override
     public void onClick(View v) {
      int id =v.getId();
      switch (id) {
      case R.id.btn_upload:
       String path =et_file.getText().toString();
       if(TextUtils.isEmpty(path.trim())){
        Toast.makeText(this, "上传的文件不能为空", Toast.LENGTH_LONG).show();
       }else{
        //异步客户端对象
        AsyncHttpClient client = new AsyncHttpClient();
        String url="http://172.16.237.144:8080/Login/UploadServlet";
        //封装文件上传的參数
        RequestParams params = new RequestParams();
        //依据路径创建文件
        File file = new File(path);
        try {
         //放入文件
         params.put("profile_picture", file);
         //1、改动这个名称,看是否能上传成功
         //2、加入上传者的姓名
        } catch (FileNotFoundException e) {
         System.out.println("文件不存在");
         e.printStackTrace();
        }
        client.post(url, params,new AsyncHttpResponseHandler(){
    
         @Override
         public void onFailure(int statusCode, Header[] headers, byte[] responseBody,
           Throwable error) {
          error.printStackTrace();
         }
    
         @Override
         public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {
          Toast.makeText(MainActivity.this, "文件上传成功!

    ", 1).show(); } }); } break; default: break; } } }


     

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

    //不适用SMART IMAGE之前:
     

    /*
     public void sendGetImg(View v){
      int id= v.getId();
      switch (id) {
      case R.id.btn_img:
       
       String url = et_url.getText().toString();
       //发送网络请求
       AsyncHttpClient client = new AsyncHttpClient();
       
       client.get(url,new AsyncHttpResponseHandler(){
    
        @Override
        public void onFailure(int statusCode, Header[] headers, byte[] responseBody,
          Throwable errors) {
          errors.printStackTrace();
        }
    
        @Override
        public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {
         if(statusCode==200){
          //创建字节工厂对象N
          BitmapFactory bitmapFactory = new BitmapFactory();
          @SuppressWarnings("static-access")
          Bitmap bitmap = bitmapFactory.decodeByteArray(responseBody, 0, responseBody.length);
          iv_img.setImageBitmap(bitmap);
         }
        }
        
       });
       break;
    
      default:
       break;
      }
     }
     */
     //使用smart image包之后
     public void sendGetImg(View v){
      int id= v.getId();
      switch (id) {
      case R.id.btn_img:
       String url = et_url.getText().toString();
       iv_img.setImageUrl(url, R.drawable.ic_launcher,R.drawable.ic_launcher);
       break;
    
      default:
       break;
      }
     }
    
     
    


     

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

  • 相关阅读:
    #Leetcode# 541. Reverse String II
    PAT 甲级 1030 Travel Plan
    PAT 甲级 1029 Median
    bzoj 2002 [Hnoi2010]Bounce 弹飞绵羊
    jzoj 4243. 【五校联考6day1】c
    2019.02.23【NOIP提高组】模拟 A 组 总结
    【GDOI2013模拟1】病毒传播
    【GDOI2013模拟1】最短路
    【GDOI2013模拟1】删数字
    数列分块入门 6 总结
  • 原文地址:https://www.cnblogs.com/zfyouxi/p/4852561.html
Copyright © 2011-2022 走看看