HttpURLConnection上传文件

import java.io.BufferedReader; import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.net.URL; import sun.net.www.protocol.http.HttpURLConnection; /**  * 主要实现文件上传,传文和接收方绑定接收后信息导入参数传递  * @author zyb  *  */ public class HttpURLConnectionServices {   /**  * @param fileName 要上传的传文文件,列:e:/upload/SSD4k对齐分区.zip  * @param Url 上传路径端口号和项目名称,服务器托管传文列:http://192.168.1.209:9080/gjbmj  * @param strSiteID 对方的传文站点编号  * @param strColumnID 对方的栏目编号  * @param strDespatcher 发送信息人  * @param strMechanism 发送信息机构  * @param strOther1  */  public static void post(String fileName ,String Url,String strSiteID,String strColumnID,String strDespatcher,String strMechanism,String strOther1){   try {   String fname =fileName;//要上传的云服务器提供商文件  File file = new File(fname);  URL url = new URL(Url+"/cms/infoShare/httpURLConnection.jsp");  HttpURLConnection conn = (HttpURLConnection) url.openConnection();  conn.setDoOutput(true);  conn.setDoInput(true);  conn.setChunkedStreamingMode(1024 * 1024);  conn.setRequestMethod("POST");  conn.setRequestProperty("connection", "Keep-Alive");  conn.setRequestProperty("Charsert", "UTF-8");  conn.setConnectTimeout(50000);  conn.setRequestProperty("Content-Type", "multipart/form-data;file="+ file.getName());  conn.setRequestProperty("fileName",file.getName());  conn.setRequestProperty("strSiteID", strSiteID);  conn.setRequestProperty("strColumnID", strColumnID);  conn.setRequestProperty("strDespatcher", strDespatcher);  conn.setRequestProperty("strMechanism", strMechanism);  conn.setRequestProperty("strOther1", strOther1);  conn.connect();  OutputStream out = new DataOutputStream(conn.getOutputStream());  DataInputStream in = new DataInputStream(new FileInputStream(file));  int bytes = 0;  byte[] bufferOut = new byte[2048];  while ((bytes = in.read(bufferOut)) != -1) {   out.write(bufferOut, 0, bytes);  }  in.close();  out.flush();  out.close();  BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));  String line = null;  while ((line = reader.readLine()) != null) {   //System.out.println("---line---"+line);  }  } catch (Exception e) {   e.printStackTrace();  }finally{   new File(fileName).delete();  }  } } 

【本文是专栏作者张勇波的原创文章,源码下载转载请通过获取作者授权】

传文
滇ICP备2023000592号-31