在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 以上版本包含

  

 

 

转载于:https://www.cnblogs.com/macroxu-1982/archive/2010/05/26/1744156.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值