明白了要做什么事情,接下来就是用java代码来构建这样的StringBuffer了。 下面给出代码
String temp = "temp.jpg";
U.ctx_for_getResString.getFilesDir() + "/" + temp;
String lineEnd = "\r\n";
String twoHyphens = "--";
"---------------------------11538186919912";
try {
File f = new File(exsistingFileName);
FileInputStream fileInputStream = new FileInputStream(f);
if (!f.exists())
return rs;
URL url = new URL(urlstr);
conn.setRequestMethod("POST");
conn.setRequestProperty("Connection",
"Keep-Alive");
if(hmap.containsKey("AUTH_HTTP_ENCODING")){
}
name=\"content\""+ lineEnd);
URLEncoder.encode(""+hmap.get("content"), "UTF-8")+ lineEnd);
dos.writeBytes(twoHyphens + boundary + lineEnd);
name=\"source\""+ lineEnd);
URLEncoder.encode(""+hmap.get("source"), "UTF-8")+ lineEnd);
dos.writeBytes(twoHyphens + boundary + lineEnd);
name=\"uploadImg\""+ lineEnd);
URLEncoder.encode("xiexiezhichi", "UTF-8")+ lineEnd);
form-data; name=\"" + fileKey + "\";filename=\"" + exsistingFileName+ "\"" + lineEnd);
dos.writeBytes(lineEnd);
byte[] buffer = new byte[bytesAvailable];
int bytesRead = fileInputStream.read(buffer, 0, bytesAvailable);
while (bytesRead > 0) {
dos.write(buffer, 0, bytesAvailable);
fileInputStream.read(buffer, 0, bytesAvailable);
}
dos.writeBytes(twoHyphens + boundary + lineEnd);
form-data; name=\"image1\";filename=\"\"" + lineEnd);
dos.writeBytes("Content-Type: application/octet-stream"+lineEnd);
dos.writeBytes(lineEnd);
dos.writeBytes(twoHyphens + boundary + lineEnd);
dos.writeBytes(lineEnd);
dos.close();
InputStream in = conn.getInputStream();
}