android-通过android http服务器上传文件
你好 我试图通过HTTP服务器将文件上传到android 我已经制作了HTML表单来上传文件,但如何接收该文件以存储在SD卡中 我只是收到文件名,没有别的 如何接收该文件 而不是阅读回答 这是参考资料 或者在没有库多部分的情况下使用此示例android-通过android http服务器上传文件,android,forms,http,upload,Android,Forms,Http,Upload,你好 我试图通过HTTP服务器将文件上传到android 我已经制作了HTML表单来上传文件,但如何接收该文件以存储在SD卡中 我只是收到文件名,没有别的 如何接收该文件 而不是阅读回答 这是参考资料 或者在没有库多部分的情况下使用此示例 您将无法获取文件..您将仅获取文件名..将路径传递给multipart@sheetal如何将该文件传递给多个部件?我已经在html表单中添加了enctype=“multipart/form data”。请从中使用多部分库Apache@sheetal在我的例子中
您将无法获取文件..您将仅获取文件名..将路径传递给multipart@sheetal如何将该文件传递给多个部件?我已经在html表单中添加了
enctype=“multipart/form data”
。请从中使用多部分库Apache@sheetal在我的例子中,android本身就是一台服务器。我想接收通过用户使用html表单发送的文件。你知道怎么做吗?
MultipartEntity entity = new MultipartEntity();
entity.addPart("type", new StringBody("photo"));
entity.addPart("data", new FileBody(new File(filepath));
httppost.setEntity(entity);
HttpResponse response = httpclient.execute(httppost);
private void uploadFile(File file) throws IOException {
Log.i(TAG, "Uploading " + file);
String videoName = file.getParentFile().getName();
AndroidHttpClient httpclient = AndroidHttpClient.newInstance(GoProLive.TAG);
try {
HttpConnectionParams.setConnectionTimeout(httpclient.getParams(), ConnectTimeout);
HttpConnectionParams.setSoTimeout(httpclient.getParams(), DataTimeout);
HttpPost post = new HttpPost(
String.format("http://" + ServerName + "/upload/%s/%s", user.getUsername(), file.getName()));
post.setEntity(new FileEntity(file, "application/octet-stream"));
SimpleDateFormat df = (SimpleDateFormat) SimpleDateFormat.getDateTimeInstance(SimpleDateFormat.SHORT, SimpleDateFormat.SHORT, Locale.US);
df.applyPattern("EEE, dd MMM yyyy HH:mm:ss z");
post.setHeader("Last-Modified", df.format(new Date(file.lastModified())));
HttpResponse httpResponse = executePost(httpclient, post);
int statusCode = httpResponse.getStatusLine().getStatusCode();
if (statusCode == HttpStatus.SC_OK) {
file.delete();
} else {
throw new HttpException("Failed to upload file " + file.getAbsolutePath(), statusCode);
}
} finally {
httpclient.close();
}
}