標籤:
import com.alibaba.fastjson.JSONArray;import com.alibaba.fastjson.JSONObject;import java.io.BufferedReader;import java.io.InputStream;import java.io.InputStreamReader;import java.net.MalformedURLException;import java.net.URL; public static String calcMobileCity(String mobileNumber) throws MalformedURLException{ String jsonString = null; JSONArray array = null; JSONObject jsonObject = null; //擷取拍拍網的API地址 String urlString = "http://virtual.paipai.com/extinfo/GetMobileProductInfo?mobile="+mobileNumber+"&amount=10000&callname=getPhoneNumInfoExtCallback"; StringBuffer sb = new StringBuffer(); BufferedReader buffer; URL url = new URL(urlString); try{ //擷取URL地址中的頁面內容 InputStream in = url.openStream(); // 解決亂碼問題 buffer = new BufferedReader(new InputStreamReader(in,"gb2312")); String line = null; //一行一行的讀取資料 while((line = buffer.readLine()) != null){ sb.append(line); } in.close(); buffer.close(); // System.out.println(sb.toString()); jsonString = sb.toString(); // 替換掉“getPhoneNumInfoExtCallback(,);<!--[if !IE]>|xGv00|6741027ad78d9b06f5642b25ebcb1536<![endif]-->”,讓它能轉換為JSONArray對象 jsonString = jsonString.replace("getPhoneNumInfoExtCallback(", "["); jsonString = jsonString.replace(");<!--[if !IE]>|xGv00|6741027ad78d9b06f5642b25ebcb1536<![endif]-->", "]"); // 把jsonString轉化為json對象 //array = JSONArray.fromObject(jsonString); array = JSONArray.parseArray(jsonString); // 擷取JSONArray的JSONObject對象,便於讀取array裡的索引值對 jsonObject = array.getJSONObject(0); }catch(Exception e){ e.printStackTrace(); } //從JSONObject對象中讀取城市名稱 return jsonObject.getString("cityname"); }
根據手機號碼擷取歸屬地