이것은 의도적으로 설계된 것입니다. 내가 알 수 있듯이 문자열의 두 번째 문자는 \ u0149 코드 포인트입니다. 최신 유니 코드 차트에 따르면
이 문자는 사용되지 않으며 그것의 사용이 입니다 강력하게 유니 코드 차트는 사용되지 않는 코드 포인트 \u006e
다음 \u02bc
에 해당 말한다
을 낙담.
IDN.toASCII(String)
가 수행하는 javadocs의 첫 번째 단계는 RFC 3491 stringprep/nameprep 알고리즘을 사용하여 입력 문자열의 문자를 처리하는 것입니다. 은 RFC 추상 말한다 :
이 문서는 가능성을 높이기 위해 국제화 된 도메인 이름 (IDN) 레이블을 준비하는 방법을 설명 그 전반에 걸쳐 일반 사용자 에 대한 이해가 가지 방법으로 이름 입력 및 이름 비교 작업 세계. 이 stringprep 프로토콜 프로필은 도메인 이름 시스템 (DNS)을 국제화하기위한 온 - 와이어 프로토콜 모음의 일부로 사용되는 입니다.
(즉, stringprep는 어렵게 한 가지처럼 뭔가 다른 의미가 까다로운 도메인 이름을 만들 수 있도록 설계되어 있습니다.) 사실
, 드릴 다운, 당신은 발견 할 것이다 \u0149
에 대한 stringprep 테이블의 규정 된 매핑은 \u02bc
\u006e
입니다. 유니 코드 코드 차트에 정의 된 등가물입니다.
그리고 ... 그런 일이 일어나고 있습니다.당신은 왕복이 IDN이가 잘못 설립 할 수
요약
- 여러분의 기대.
- 어쨌든 사용되지 않아야하므로 더 이상 사용하지 말아야합니다. (IDN에서 사용하는 것은 당연한 생각입니다!)