1. 文件上传的两种方式

(1) HttpClient

(2)AsyncHttpClient (开源框架: https://github.com/loopj/android-async-http

示例代码(2)最简单

public void upload(View v){
String path = et_path.getText().toString().trim();
File file = new File(path);
String uri = "http://192.168.1.100:8080/TestLogin/servlet/UploadFile";
if(file.exists() && file.length()>0){
AsyncHttpClient client = new AsyncHttpClient();
RequestParams params = new RequestParams();
try {
params.put("profile_picture", file);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
client.post(uri, params, new AsyncHttpResponseHandler(){ @Override
public void onFailure(Throwable error, String content) {
Toast.makeText(MainActivity.this, "上传失败", Toast.LENGTH_SHORT).show();
} @Override
public void onSuccess(String content) {
Toast.makeText(MainActivity.this, "上传成功", Toast.LENGTH_SHORT).show();
} });
}else{
Toast.makeText(this, "文件不存在", Toast.LENGTH_SHORT).show();
}
}

示例代码(1)

public void upload(View viwe){
HttpClient client = new HttpClient();
PostMethod filePost = new PostMethod("http://192.168.1.100:8080/web/UploadServlet");;
try {
String path = et_path.getText().toString().trim();
File file = new File(path);
if(file.exists()&&file.length()>0){
Part[] parts = {new StringPart("nameaaaa", "valueaaa"),
new StringPart("namebbb", "valuebbb"),
new FilePart("pic", new File(file.getAbsolutePath()))};
filePost.setRequestEntity(new MultipartRequestEntity(parts, filePost.getParams()));
client.getHttpConnectionManager().getParams()
.setConnectionTimeout(5000);
int status = client.executeMethod(filePost);
if(status ==200){
Toast.makeText(this, "上传成功", 1).show();
}else{
Toast.makeText(this, "上传失败", 1).show();
} }
else{
Toast.makeText(this, "上传的文件不存在", 0).show();
}
} catch (Exception e) {
e.printStackTrace();
filePost.releaseConnection();
} }

Android -- 文件上传到服务器的更多相关文章

  1. android文件上传到服务器

    package uploadDemo; import java.io.DataOutputStream;import java.io.File;import java.io.FileInputStre ...

  2. Java实现文件上传到服务器(FTP方式)

    Java实现文件上传到服务器(FTP方式) 1,jar包:commons-net-3.3.jar 2,实现代码: //FTP传输到数据库服务器 private boolean uploadServer ...

  3. Linux 文件上传Linux服务器

    进入命令行 在图形化桌面出现之前,与Unix系统进行交互的唯一方式就是借助由shell所提供的文本命令行界面(command line interface,CLI).CLI只能接受文本输入,也只能显示 ...

  4. 基于paramiko将文件上传到服务器上

    通过安装使用paramiko模块,将本地文件上传到服务器上 import paramiko import datetime import os hostname = '服务器ip' username ...

  5. ubuntu中将本地文件上传到服务器

    (1)在本地的终端下,而不是在服务器上.在本地的终端上才能将本地的文件拷入服务器. (2) scp -r localfile.txt username@192.168.0.1:/home/userna ...

  6. 一、手把手教你docker搭建fastDFS文件上传下载服务器

    在搭建fastDFS文件上传下载服务器之前,你需要准备的有一个可连接的linux服务器,并且该linux服务器上已经安装了docker,若还有没安装docker的,先百度自行安装docker. 1.执 ...

  7. android和struts2实现android文件上传

    1.开发准备如下2个工具类 package org.lxh.util; import java.io.BufferedReader; import java.io.InputStreamReader; ...

  8. Android文件上传与下载

    文件上传与下载 文件上传 -- 服务端 以Tomcat为服务器,Android客服端访问Servlet,经Servlet处理逻辑,最终将文件上传,这里就是简单模拟该功能,就将文件上传到本机的D:\\u ...

  9. java文件上传到服务器

    最近项目中使用到了文件从本地到服务器的功能.其实是为了解决目前浏览器不支持获取本地文件全路径.不得已而想到上传到服务器的固定目录,从而方便项目获取文件,进而使程序支持EXCEL批量导入数据. 在前台界 ...

随机推荐

  1. style2paints、deepcolor、sketchkeras项目

    数据集不够怎么办? 1 一些传统的边缘提取算法可以提取图像边缘. 2 这里我们有一个使用神经网络提取线稿图的项目——sketchkeras 源码:https://github.com/lllyasvi ...

  2. 前端基础之BOM和DOM和三个小示例(计时器、搜索框、select联动)

    一.BOM和DOM JavaScript分为 ECMAScript,DOM,BOM. BOM(Browser Object Model)是指浏览器对象模型,它使 JavaScript 有能力与浏览器进 ...

  3. postgresql 建模文件 LDM 转成PDM 生成 SQL问题

    LDM 转成 PDM (Tool --- GPDM ) 生成 SQL,查看全部SQL 详细步骤见下图. 1.postgresql 没有 VARCHAR2 只有 VARCHAR. 2.LDM 生成 PD ...

  4. append和extend区别

    append append方法用于在列表末尾添加新的对象 它是把添加的对象当成一个整体追加到末尾 a=[1,23,436] b=[] b.append(a) print(b)""& ...

  5. Flask博客开发——自定义头像

    Flask Web开发一书中,使用了与个人邮箱绑定的Gravatar图形作为用户头像.Gravatar提供的头像比较简陋,而且可能由于网络问题无法生成头像.多数社交网站和博客提供用户自定义头像功能,因 ...

  6. Mysql 5.7 主从复制

    配置思路1. 修改master和slave的配置文件,使用二进制日志,指定serverid目的是让各自都有了自己的唯一标示,并以二进制文件格式进行交流2. master中创建授权用户,查看二进制日志文 ...

  7. Divide by Zero 2017 and Codeforces Round #399 (Div. 1 + Div. 2, combined) D. Jon and Orbs

    地址:http://codeforces.com/contest/768/problem/D 题目: D. Jon and Orbs time limit per test 2 seconds mem ...

  8. idea中 在接口中如何直接跳转到该接口的是实现类中?

    例如,我想跳转到UserInfoDao 这个接口的实现类中,操作如下: 把鼠标放到这个接口UserInfoDao 上面,右键,选择 GO To ,然后选择 Implementations,就可以直接跳 ...

  9. Laravel 学习记录

    1.当配置  根目录没有指向/public 时 去掉www.blog.im/public 后的文件 需要把  public  文件夹里的..htaccess  文件放到 项目根目录.server.ph ...

  10. Linux 模拟网络丢包,延时

    实战: 丢包tc qdisc add dev bond0 root netem loss 10% 延迟tc qdisc add dev bond0 root netem latency 100ms 丢 ...