程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 在C#中對中文域名判斷和解析

在C#中對中文域名判斷和解析

編輯:C#入門知識

什麼是中文域名,及其的編碼方式?
中文域名是含有中文的新一代域名,同英文域名一樣,是互聯網上的門牌號碼。中文域名在技術上符合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在線生成器

 

    

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved