public class MyUtil {
// 判斷網絡是否開通
public static boolean isAvailable(Context context) {
// 獲取網絡管理者
ConnectivityManager manager = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
// 獲取網絡情況
NetworkInfo info = manager.getActiveNetworkInfo();
if (!info.isAvailable() || info == null) {
return false;
}
return true;
}
/**
* get請求對象
* @param url
* @param name
* @param pass
* @return
*/
public static String getData(String url, String name, String pass) {
String data = "";
StringBuffer sb = new StringBuffer(url);
sb.append("?username=" + name);
sb.append("&userpass=" + pass);
// 創建與服務器的連接
try {
URL setUrl = new URL(sb.toString());
// 打開連接
HttpURLConnection con = (HttpURLConnection) setUrl.openConnection();
// 設置連接超時的容忍的時間
con.setConnectTimeout(5000);
// 設置讀取請求的時間
con.setReadTimeout(5000);
// 判斷響應是否成功
if (con.getResponseCode() == 200) {
// 讀取響應的數據,(將字節流轉化為緩沖流)
BufferedReader br = new BufferedReader(new InputStreamReader(
con.getInputStream()));
// 讀取數據
data = br.readLine();
}
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return data;
}
/**
* post請求對象
* @param url
* @return
*/
public static String getDataBypost(String url,String name,String pass) {
String data="";
// 創建與服務器的連接對象
try {
URL u = new URL(url);
// 打開連接
HttpURLConnection open = (HttpURLConnection) u.openConnection();
// 設置連接的容忍時間
open.setConnectTimeout(5000);
// 設置讀取請求的時間
open.setReadTimeout(5000);
//設置請求的方法
open.setRequestMethod("POST");
//設置是否可以輸入輸出數據
open.setDoInput(true);
open.setDoOutput(true);
//傳遞參數
DataOutputStream dos = new DataOutputStream(open.getOutputStream());
String str="username="+name+"&userpass="+pass;
dos.write(str.getBytes());
dos.flush();
// 判斷請求是否響應成功
if (open.getResponseCode() == 200) {
// 響應成功,獲取響應的數據
BufferedReader br = new BufferedReader(new InputStreamReader(
open.getInputStream()));
data= br.readLine();
System.out.println(data+"++++++++++++++++++====");
}
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return data;
}
public static String getdataByClient(String url,String name,String pass)
{
String data="";
//創建請求對象
HttpPost post=new HttpPost(url);
//設置請求參數
HttpParams params=new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(params, 5000);
HttpConnectionParams.setSoTimeout(params, 5000);
//傳遞參數
ArrayList<NameValuePair> list = new ArrayList<NameValuePair>();
BasicNameValuePair p1 = new BasicNameValuePair("username", name);
BasicNameValuePair p2 = new BasicNameValuePair("userpass", pass);
list.add(p1);
list.add(p2);
//設置參數的類型Entity
try {
HttpEntity en=new UrlEncodedFormEntity(list,"utf-8");
//將數據添加到請求上面
post.setEntity(en);
} catch (UnsupportedEncodingException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
//創建執行請球的對象
HttpClient client=new DefaultHttpClient(params);
//執行請求
try {
HttpResponse resp = client.execute(post);
//判斷是否響應成功
if(resp.getStatusLine().getStatusCode() == 200)
{
//獲取響應的數據
HttpEntity entity = resp.getEntity();
//轉換數據的類型
data= EntityUtils.toString(entity, "utf-8");
}
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return data;
}
}
2、將entity對象轉化為數據流
InputStream is=entity.getContent();