方法一:(网络摘抄)
/// <summary>
/// 输入手机号码得到归属地信息
/// </summary>
/// <param name="number">手机号码</param>
/// <returns>数组类型0为归属地,1卡类型,2区 号,3邮 编</returns>
public static string[] getTelldate(string number)
{
try
{
string strSource = GetUrltoHtml("http://www.ip138.com:8080/search.asp?action=mobile&mobile=" + number.Trim());
//归属地
strSource = strSource.Substring(strSource.IndexOf(number));
strSource = StripHTML(strSource);
strSource = strSource.Replace("\r", "");
strSource = strSource.Replace("\n", "");
strSource = strSource.Replace("\t", "");
strSource = strSource.Replace(" ", "");
strSource = strSource.Replace("-->", "");
string[] strnumber = strSource.Split(new string[] { "归属地", "卡类型", "邮 编", "区 号", "更详细", "卡号" }, StringSplitOptions.RemoveEmptyEntries);
string[] strnumber1 = null;
if (strnumber.Length > 4)
{
strnumber1 = new string[] { strnumber[1].Trim(), strnumber[2].Trim(), strnumber[3].Trim(), strnumber[4].Trim() };
}
return strnumber1;
}
catch (Exception)
{
return null;
}
}
方法二:
//查询手机号码所属地区
public static String getMobileAddress(String mobile) throws Exception
{
String address = "";
try
{
mobile = mobile.trim();
if (mobile.matches("^(13|15|18)\\d{9}$") || mobile.matches("^(013|015|018)\\d{9}$")) //以13,15,18开头,后面九位全为数字
{
String url = "http://www.ip138.com:8080/search.asp?action=mobile&mobile=" + mobile;
URLConnection connection = (URLConnection) new URL(url).openConnection();
connection.setDoOutput(true);
InputStream os = connection.getInputStream();
Thread.sleep(100);
int length = os.available();
byte[] buff = new byte[length];
os.read(buff);
String s = new String(buff, "gbk");
int len = s.indexOf("卡号归属地");
s = s.substring(len, len+100);
len = s.lastIndexOf("</TD>");
address = s.substring(0, len);
len = address.lastIndexOf(">");
address = address.substring(len+1, address.length());
address = address.replace(" ", ",");
address = address.replace("d> -->", "");
address = address.replace(" -->", "");
address = address.replace("-->", "");
s = null;
buff = null;
os.close();
connection = null;
}
}
catch(Exception e)
{
address = "未知";
System.out.println("手机所属地查询失败====================");
}
return address;
}