当前位置: 首页 > 科技观察

HttpURL连接上传文件

时间:2023-03-14 23:58:09 科技观察

importjava.io.BufferedReader;importjava.io.DataInputStream;importjava.io.DataOutputStream;importjava.io.File;importjava.io.FileInputStream;importjava.io.InputStreamReader;importjava.io.OutputStream;importjava.net.URL;importsun。net.www.protocol.http.HttpURLConnection;/***主要实现文件上传,与接收方绑定,接收到后导入信息传递参数*@authorzyb**/publicclassHttpURLConnectionServices{/***@paramfileName待上传文件,column:e:/upload/SSD4kalignmentpartition.zip*@paramUrl上传路径端口号和工程名,column:http://192.168.1.209:9080/gjbmj*@paramstrSiteID对方站点号*@paramstrColumnID对方站点列号*@paramstrDespatchersender*@paramstrMechanismsender*@paramstrOther1*/publicstaticvoidpost(StringfileName,StringUrl,StringstrSiteID,StringstrColumnID,StringstrDespatcher,StringstrMechanism,StringstrOther1){try{Stringfname=fileName;//要上传的文件Filefile=newFile(fname);URLurl=newURL(Url+"/cms/infoShare/httpURLConnection.jsp");HttpURLConnectionconn=(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();OutputStreamout=newDataOutputStream(conn.getOutputStream());DataInputStreamin=newDataInputStream(newFileInputStream(file));intbytes=0;byte[]bufferOut=newbyte[2048];while((bytes=in.read(bufferOut))!=-1){out.write(bufferOut,0,bytes);}in.close();out.flush();out.close();BufferedReaderreader=newBufferedReader(newInputStreamReader(conn.getInputStream()));Stringline=null;while((line=reader.readLine())!=null){//System.out.println("---line---"+line);}}catch(Exceptione){e.printStackTrace();}finally{newFile(fileName).delete();}}}【本文为专栏作者张某原创文章永博,转载请取得作者授权】