1 /// <summary>
2
3 /// 根据IP获取省市
4
5 /// </summary>
6
7 public void GetAddressByIp()
8
9 {
10
11 string ip =
"115.193.217.249";
12
13 string PostUrl =
"http://int.dpool.sina.com.cn/iplookup/iplookup.php?ip=" +
ip;
14
15 string res = GetDataByPost(PostUrl);
//该条请求返回的数据为:res=1\t115.193.210.0\t115.194.201.255\t中国\t浙江\t杭州\t电信
16
17
18 string[] arr =
getAreaInfoList(res);
19
20 }
1 /// <summary>
2
3 /// Post请求数据
4
5 /// </summary>
6
7 /// <param name="url"></param>
8
9 /// <returns></returns>
10
11 public string GetDataByPost(
string url)
12
13 {
14
15 HttpWebRequest req =
(HttpWebRequest)WebRequest.Create(url);
16
17 string s =
"anything";
18
19 byte[] requestBytes =
System.Text.Encoding.ASCII.GetBytes(s);
20
21 req.Method =
"POST";
22
23 req.ContentType =
"application/x-www-form-urlencoded";
24
25 req.ContentLength =
requestBytes.Length;
26
27 Stream requestStream =
req.GetRequestStream();
28
29 requestStream.Write(requestBytes,
0, requestBytes.Length);
30
31 requestStream.Close();
32
33
34 HttpWebResponse res =
(HttpWebResponse)req.GetResponse();
35
36 StreamReader sr =
new StreamReader(res.GetResponseStream(), System.Text.Encoding.Default);
37
38 string backstr =
sr.ReadToEnd();
39
40 sr.Close();
41
42 res.Close();
43
44 return backstr;
45
46 }
1 /// <summary>
2
3 /// 处理所要的数据
4
5 /// </summary>
6
7 /// <param name="ip"></param>
8
9 /// <returns></returns>
10
11 public static string[] getAreaInfoList(
string ipData)
12
13 {
14
15 //1\t115.193.210.0\t115.194.201.255\t中国\t浙江\t杭州\t电信
16
17 string[] areaArr =
new string[
10];
18
19 string[] newAreaArr =
new string[
2];
20
21 try
22
23 {
24
25 //取所要的数据,这里只取省市
26
27 areaArr = ipData.Split(
'\t');
28
29 newAreaArr[
0] = areaArr[
4];
//省
30
31 newAreaArr[
1] = areaArr[
5];
//市
32
33 }
34
35 catch (Exception e)
36
37 {
38
39 // TODO: handle exception
40
41 }
42
43 return newAreaArr;
44
45 }
转载于:https://www.cnblogs.com/AlexZha/p/5736864.html
相关资源:根据Ip获取省份城市