注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

kangzye的博客

加Q群25382780切磋java,加19360923群研究JavaScript

 
 
 

日志

 
 

httpclient 3.1 上传文件 同时传递参数  

2011-04-13 01:21:40|  分类: java |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
直接贴出代码:

package tools;

import java.io.File;
import java.io.IOException;

import javax.xml.rpc.holders.StringHolder;

import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.methods.PostMethod;
import org.apache.commons.httpclient.methods.multipart.FilePart;
import org.apache.commons.httpclient.methods.multipart.MultipartRequestEntity;
import org.apache.commons.httpclient.methods.multipart.Part;
import org.apache.commons.httpclient.methods.multipart.StringPart;



public class UploadHelper {
    public static int post(String url,File[] files,NameValue[] nvs,StringHolder response) throws IOException{
        int status = 0;
        HttpClient client =  new HttpClient();
        PostMethod method = new PostMethod(url);
        Part[] parts = new Part[files.length+nvs.length];
        int index = 0;
        for(File file:files){
            parts[index++]=new FilePart(file.getName(), file);
        }
        for(NameValue nv:nvs){
            parts[index++]=new StringPart(nv.name, nv.value);
        }
        MultipartRequestEntity entry = new MultipartRequestEntity(parts, method.getParams());
        method.setRequestEntity(entry);
        try {
            status = client.executeMethod(method);
            response.value=new String(method.getResponseBody(),method.getResponseCharSet());
        } catch (HttpException e) {
            e.printStackTrace();
            throw e;
        } catch (IOException e) {
            e.printStackTrace();
            throw e;
        }finally{
            method.releaseConnection();
        }
        return status;
    }
}

class NameValue{
    public String name;
    public String value;
}
  评论这张
 
阅读(2711)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017