ASP.NET根据IP获取省市地址

1、在网站的跟路径下面添加 QQWry.dat 文件,这个文件是IP数据库文件

 

2、添加以下一个类 IPScanner

 
 
C# 代码    复制

public class IPScanner { //私有成员#region 私有成员   private string dataPath; private string ip; private string country; private string local; private long firstStartIp = 0; private long lastStartIp = 0; private FileStream objfs = null; private long startIp = 0; private long endIp = 0; private int countryFlag = 0; private long endIpOff = 0; private string errMsg = null; //构造函数#region 构造函数   public IPScanner() { this.dataPath = System.Web.HttpContext.Current.Server.MapPath("/ipdata/QQWry.dat"); } //公共属性#region 公共属性   public string DataPath { set { dataPath = value; } } public string IP { set { ip = value; } } public string Country { get { return country; } } public string Local { get { return local; } } public string ErrMsg { get { return errMsg; } } //搜索匹配数据#region 搜索匹配数据   private int QQwry() { string pattern = @"(((\\d{1,2})|(1\\d{2})|(2[0-4]\\d)|(25[0-5]))\\.){3}((\\d{1,2})|(1\\d{2})|(2[0-4]\\d)|(25[0-5]))"; Regex objRe = new Regex(pattern); Match objMa = objRe.Match(ip); if (!objMa.Success) { this.errMsg = "IP格式错误"; return 4; } long ip_Int = this.IpToInt(ip); int nRet = 0; if (ip_Int >= IpToInt("127.0.0.0

你可能感兴趣的:(ASP.NET根据IP获取省市地址)