【发布时间】:2016-11-29 11:58:40
【问题描述】:
我想一次上传多张图片。 所以我找到了“MultipartEntityBuilder”,但效果不佳。
这是我的来源...
public void executeMultipartPost() throws Exception {
try {
MultipartEntityBuilder builder = MultipartEntityBuilder.create();
builder.setCharset(Charset.forName("UTF-8"));
builder.setMode(HttpMultipartMode.BROWSER_COMPATIBLE);
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.PNG, 100, byteArrayOutputStream);
byteArray = byteArrayOutputStream.toByteArray();
builder.addTextBody("file1", byteArray.toString());
builder.addTextBody("file2", byteArray2.toString());
// send
InputStream inputStream = null;
HttpClient httpClient = AndroidHttpClient.newInstance("Android");
HttpPost httpPost = new HttpPost(UPLOAD_URL);
httpPost.setEntity(builder.build());
HttpResponse httpResponse = httpClient.execute(httpPost);
HttpEntity httpEntity = httpResponse.getEntity();
inputStream = httpEntity.getContent();
// response
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream, "UTF-8"));
StringBuilder stringBuilder = new StringBuilder();
String line = null;
while ((line = bufferedReader.readLine()) != null) {
stringBuilder.append(line + "\n");
}
inputStream.close();
// result
String result = stringBuilder.toString();
} catch (Exception e) {
e.printStackTrace();
}
}
调试时,'httpPost.setEntity(builder.build())' 这一行是错误的。
并且没有'Caused by~',而是Process: NoSuchFiledError in logcat...
但我认为我将图像制作为位图,然后将其发送到 FTP。怎么了..?谢谢。
【问题讨论】: