3

たとえば、私は URL を持っていて、それをフォームhttp://кц.рф/ru/registrators/に変換したいと考えています。http://xn--j1ay.xn--p1ai/ru/registrators/

new System.Globalization.IdnMapping().GetAscii(href) 
// result: xn--http://-jig2i.xn--/ru/registrators/-zdo8d
System.Web.HttpUtility.UrlPathEncode(href)
// result: http://%d0%ba%d1%86.%d1%80%d1%84/ru/registrators/

より一般的な問題は、次のような URL を正規化することです。http://кц.рф/ru/registrators/q?рф=세요

これを行うより簡単な方法はありますか:

  1. ドメイン部分を取得
  2. Unicode シンボルがある場合は、次を使用してドメイン部分を処理しますIdnMapping().GetAscii
  3. を使用してクエリ部分を処理するUri.EscapeUriString()

部分的に関連する質問how-to-convert-idn-to-ascii

4

0 に答える 0