Android DefaultHttpClient 上传文件
来源:互联网 发布:windows禁用icmp重定向 编辑:程序博客网 时间:2024/05/16 19:41
需要依赖httpmime.jar
public class HttpText {public static void UseVolleyForHttps(Context context) {try {String path = "http://192.168.0.102:8080/myweb/der";BasicHttpParams params = new BasicHttpParams();HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);HttpProtocolParams.setContentCharset(params,HTTP.DEFAULT_CONTENT_CHARSET);HttpProtocolParams.setUseExpectContinue(params, true);SSLSocketFactory.getSocketFactory().setHostnameVerifier(new AllowAllHostnameVerifier());SchemeRegistry schReg = new SchemeRegistry();schReg.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), 80));// 出错:因为使用了不被系统承认的自定义证书:No peer certificate 。// schReg.register(new// Scheme("https",SSLSocketFactory.getSocketFactory(), 443));schReg.register(new Scheme("https", SSLTrustAllSocketFactory.getSocketFactory(), 443));ClientConnectionManager connMgr = new ThreadSafeClientConnManager(params, schReg);DefaultHttpClient client = new DefaultHttpClient(connMgr, params);org.apache.http.entity.mime.MultipartEntity s = new org.apache.http.entity.mime.MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);// 测试文件File file = new File(context.getCacheDir(), "jt.txt");if (!file.exists()) {file.createNewFile();}FileWriter w = new FileWriter(file);w.write("橘子面包");w.flush();s.addPart(new FormBodyPart("title", new StringBody("juntao")));s.addPart("file", new FileBody(file, "text/plain"));HttpPost post = new HttpPost(path);post.setEntity(s);HttpResponse httpResponse = client.execute(post);int responseCode = httpResponse.getStatusLine().getStatusCode();String message = httpResponse.getStatusLine().getReasonPhrase();HttpEntity entity = httpResponse.getEntity();if(responseCode==200){Log.e("成功", "succee");}} catch (ClientProtocolException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}
服务器端:
/** * Servlet implementation class NesServlet */@WebServlet("/der")public class FormServlet extends HttpServlet {/** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse * response) */protected void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException {doPost(request, response);}/** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse * response) */protected void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException {System.out.print("上传中\n");System.out.print("查看参数\n------------------------\n");boolean isMultipart = ServletFileUpload.isMultipartContent(request);if (isMultipart) {try {FileItemFactory factory = new DiskFileItemFactory();ServletFileUpload upload = new ServletFileUpload(factory);upload.setHeaderEncoding("UTF-8");List<FileItem> items = upload.parseRequest(request);//String dir = request.getSession().getServletContext()//.getRealPath("/files");File dirFile = new File("E:/uploder");if (!dirFile.exists()) {dirFile.mkdirs();}for (FileItem item : items) {if (item.isFormField()) {String name = item.getFieldName();String values = item.getString("UTF-8");System.out.print("属性="+ name+"\n");System.out.print("值="+values+"\n");} else {System.out.print("有文件");File saveFile = new File("E:/uploder", item.getName());item.write(saveFile);}}} catch (FileUploadException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}} else {doGet(request, response);}}}
0 0
- Android DefaultHttpClient 上传文件
- android DefaultHttpClient 超时
- android DefaultHttpClient 超时
- android DefaultHttpClient设置setCookieStore
- DefaultHttpClient
- DefaultHttpClient
- DefaultHttpClient
- Android使用DefaultHttpClient访问Wap网络
- android http上传文件
- Android 上传大文件
- Android 上传大文件
- android 文件上传
- android 上传文件类
- android上传文件
- Android 文件上传参考
- Android 文件的上传
- Android入门:文件上传
- android之文件上传
- ViewFlipper实现引导页面
- laravel POST请求失败的原因
- JAVA ClassLoader机制
- Oracle 索引 详解
- svn: E000017: Can't create directory '/home/cmcc/.svn/tmp': File exists
- Android DefaultHttpClient 上传文件
- Linux信号(signal) 分析与处理
- 持久对象的生命周期(瞬时态、持久态、脱管态)
- java--排序算法之冒泡排序
- 2.Redis学习(二)redis配置
- Maven命令
- 脉络清晰的BP神经网络
- 在云服务器上从0安装CDH5.4.0 步骤
- echarts-多柱子柱状图