ASP.NETはIPに基づいて省市住所を取得する
4918 ワード
1、サイトのフォロー先の下にQQWryを追加する.datファイル、このファイルはIPデータベースファイルです
2、次のクラスIPScannerを追加する
C#コード
コピー
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("