String urlStr = "http://192.168.0.101/images/"; //给了读写的权限
private void HttpClientUpLoad(String pathImage) //pathImage 路径也存在
{
String uploadMsg="";
HttpClient httpclient = new DefaultHttpClient();
try{
HttpPost httppost = new HttpPost(urlStr);
File aFile = new File(pathImage); FileEntity fileEty = new FileEntity(aFile, "binary/octet-stream");
httppost.setEntity(fileEty);
httppost.addHeader("filename", aFile.getName());
HttpResponse response;
response = httpclient.execute(httppost);
Log.i("info -- response: ", response.getStatusLine().getReasonPhrase());
Header[] headers = response.getAllHeaders();
headers = response.getHeaders("resultcode");
if (headers[0].getValue().equals("0")) {
uploadMsg = "上传照片成功!";
}
}catch(Exception ex)
{
uploadMsg = ex.getMessage();
}
finally {
Toast.makeText(CameraPhotos.this, uploadMsg,
Toast.LENGTH_LONG).show();
httpclient.getConnectionManager().shutdown();
}
}手机端怎么上传不了图片呢?请各位大哥大姐指点下,非常感谢
package com.lbschat.util;import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;import org.apache.http.HttpResponse;
import org.apache.http.client.CookieStore;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.client.params.HttpClientParams;
import org.apache.http.entity.BasicHttpEntity;
import org.apache.http.entity.FileEntity;
import org.apache.http.entity.mime.HttpMultipartMode;
import org.apache.http.entity.mime.MultipartEntity;
import org.apache.http.entity.mime.content.FileBody;
import org.apache.http.entity.mime.content.StringBody;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.impl.cookie.BasicClientCookie;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
import org.apache.http.protocol.HTTP;
import org.apache.http.util.EntityUtils;import android.content.Context;
import android.util.Log;public class UploadApacheUtil {
private static UploadApacheUtil httpUpload;
public static UploadApacheUtil getInstance(){
if(httpUpload == null){
httpUpload = new UploadApacheUtil();
}
return httpUpload;
}
private int timeout = 30 * 1000;
private int readout = 60 * 1000;
private int bufferSize = 8192;
final public static boolean isShowLog = true;
private DefaultHttpClient httpClient;
private String LOG_TAG = "MyTag";private void init(){
// 创建 HttpParams 以用来设置 HTTP 参数(这一部分不是必需的) HttpParams params = new BasicHttpParams();
// 设置连接超时和 Socket 超时,以及 Socket 缓存大小 HttpConnectionParams.setConnectionTimeout(params, timeout); HttpConnectionParams.setSoTimeout(params, readout); HttpConnectionParams.setSocketBufferSize(params, bufferSize);
// 设置重定向,缺省为 true
HttpClientParams.setRedirecting(params, true);
// 设置 user agent
//HttpProtocolParams.setUserAgent(params, userAgent); // 中的用法,在 Android 1.5 中我们需要使用 Apache 的缺省实现 DefaultHttpClient httpClient = new DefaultHttpClient(params);
}//同时发送文件及参数,服务端需要用Mine来获取
public String post(String sUri , Map<String , String> maps, File file){
try{
if(isShowLog){
Log.i(LOG_TAG, "post->multipart:" + sUri);
}
HttpPost request = new HttpPost(sUri);
FileBody bin = new FileBody(file);
MultipartEntity mpEntity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);
if(maps != null){
for(Map.Entry<String, String> entrys : maps.entrySet()){
mpEntity.addPart(entrys.getKey(), new StringBody(entrys.getValue()));
}
}
mpEntity.addPart("file", bin);
request.setEntity(mpEntity);
HttpResponse httpResponse = httpClient.execute(request);
int codeStatus = httpResponse.getStatusLine().getStatusCode();
if(codeStatus != 200){
return null;
}
String result = EntityUtils.toString(httpResponse.getEntity());
if(isShowLog){
Log.i(LOG_TAG, "post->result:" + result);
}
return result;
} catch (Exception e) {
}finally{
}
return null ;
}}