ASP.NETはIPに基づいて省市住所を取得する

4918 ワード

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("