什麼是中文域名,及其的編碼方式?
中文域名是含有中文的新一代域名,同英文域名一樣,是互聯網上的門牌號碼。中文域名在技術上符合2003年3月份IETF發布的多語種域名國際標准(RFC3454、RFC3490、RFC3491、
RFC3492)。中文域名屬於互聯網上的基礎服務,注冊後可以對外提供WWW、EMAIL、FTP等應用服務。
中文域名采用Punycode的編碼方式
什麼是Punycode編碼?
Punycode是一個根據RFC 3492標准而制定的編碼系統,主要用於把域名從地方語言所采用的Unicode編碼轉換成可以用於DNS系統的編碼。而改編碼是根據域名相異字表(由IANA制定
),Punycode可以防止所謂的IDN欺騙。
在C#如何判斷是否是中文域名
//判斷是否是中文域名:
Regex r = new Regex(@"[u4e00-u9fa5]+");
Match mc = r.Match(this.TextBox_WebSiteDomainName.Text);
if (mc.Length != 0)//含中文域名
{
}
else
{
}
C#中如何解析中文域名,將中文域名轉化成Punycode編碼
IdnMapping dd = new IdnMapping();
string 新域名 = dd.GetAscii(中文域名);
注:IdnMapping 在.Net 1.1 以上版本包含
實際使用用例
siteMap文件在線生成器,後台C#,支持中文域名輪詢抓取
SiteMap在線生成器