我们有文件的字节数组,我们想将它作为文件上传。
FileBody
仅File
作为参数获取,但我们有一个字节数组。
一种解决方案是将字节数组保存到文件中然后发送,但它不适合我。
byte b[]= new byte[1000];
//fill b
MultipartEntity form = new MultipartEntity();
form.addPart("file", new FileBody(/* b? */));
谢谢。
我们有文件的字节数组,我们想将它作为文件上传。
FileBody
仅File
作为参数获取,但我们有一个字节数组。
一种解决方案是将字节数组保存到文件中然后发送,但它不适合我。
byte b[]= new byte[1000];
//fill b
MultipartEntity form = new MultipartEntity();
form.addPart("file", new FileBody(/* b? */));
谢谢。
你可以做类似的事情
HttpClient client=null;
byte b[]= new byte[1000];
MultipartEntity form = new MultipartEntity();
ContentBody cd = new InputStreamBody(new ByteArrayInputStream(b), "my-file.txt");
form.addPart("file", cd);
HttpEntityEnclosingRequestBase post = new HttpPost("");//If a PUT request then `new HttpPut("");`
post.setEntity(form);
client.execute(post);
您可以使用ByteArrayBody代替 InputStreamBody 或 FileBody。
HttpClient client=null;
byte b[]= new byte[1000];
MultipartEntity form = new MultipartEntity();
ContentBody cd = new ByteArrayBody(b, "my-file.txt");
form.addPart("file", cd);
HttpEntityEnclosingRequestBase post = new HttpPost("");
post.setEntity(form);
client.execute(post);