この記事では、フォームを送信するために投稿を模倣することにより、Javaの画像アップロード関数について説明します。次のように、参照のために共有してください。
模擬フォームHTMLは次のとおりです。
<form action = "up_result.jsp" method = "post" enctype = "multipart/form-data" name = "form1" id = "form1"> <label> <入力タイプ= "テキスト" name = "name" value = " /> < /label> <label> <入力タイプ="ファイル "name =" userfile " /> < /label> <label> <inputタイプ=" value = "upload" /> < /label >/form>
Javaコードは次のとおりです。
yanek.util.io.io.io.dataoutputStream; java.net.httpurlconection net .sf.json.jsonArray; //0.jpg "; string urlstr =" http://127.0.0.0.1:8080/minicms/up/up_result.jsp "; map <string、string> textmap = new hashmap <string>(); te xtmap .put( "name"、 "testname"); 、filemap); out.println(ret); string> textmap、map <string、filemap){string res = ""; -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -----------------------------------123821742118716 "; //境界はリクエストヘッダーとアップロードファイルの区切り文字ですコンテンツ{urlStr(urlstr); ; conn.setcaches.setRequestMethod( "Connection"、 "conn-agent"、 "mozilla/5.0; u ; Windows NT 6.1; getOutputStream()) = map.Entry.next(); string inputalue =(string)entry.getValue(); ( "/r/n")。append( " - ")。append(boundary).append( "/r/n"); + inputname + "/"/r/n/r/n "); strbuf.append(inputValue);} out.write(strbuf.tostring().getBytes());} // file if(filemap!= null ){iterator iter = filemap.entryset()。 )string inputvalue.getValue(); .getContentType(file); /octet-stream ";} stringbuffer strbuf = new Stringbuffer(); strbuf.append("/r/n ")。ap pend(" - ").append(boundary).append("/r/n ")) ; strbuf.append( "content-disposition:form-data; name =/" " + inputname +"; filename =/" + filename +"/"/r/n"); strbuf.append( "content-タイプ: " + contentType +"/r/n/r/n "); out.write(strbuf.tostring()。getBytes()); datainputStream in = new datainputStream(new fileinputStream(file)); int bytes = 0 = 0 ; bufferout = new byte [1024]; } byte [] enddata =( "/r/n-" + boundary + " - /r/n")。 ; // return stringbuffer stringbuffer() = null){line).append( "/n"); (「ポストリクエストの送信エラーが発生しました。 " + urlstr); e.printstacktrace();}最後に{if(conn!= null){conn.disconnect(); conn = null;}} return res;}}}この記事がみんなのJavaプログラミングに役立つことを願っています。