|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
java.lang.Objectjava.net.IDN
public final class IDN
일반적으로의 Unicode 표현과 ASCII 호환 인코딩 (ACE) 표현과의 사이에 국제화 도메인명 (IDN)의 변환을 실시하는 메소드를 제공합니다. 국제화 도메인명이 Unicode 의 전범위의 문자를 사용할 수 있는데 대해, 종래의 도메인명은 ASCII 문자에 제한되고 있습니다. ACE 는 ASCII 문자만을 사용하는 Unicode 캐릭터 라인의 인코딩이며, 도메인 네임 시스템 등, 종래의 도메인명 밖에 인식하지 않는 소프트웨어로 사용할 수가 있습니다.
국제화 도메인명은 RFC 3490 으로 정의되고 있습니다. RFC 3490 은 2 개의 조작을 정의하고 있습니다. ToASCII 와 ToUnicode 입니다. 이것들 2 개의 조작은,Stringprep 의 프로파일의 1 개인 Nameprep 알고리즘과Punycode 알고리즘을 사용해, 도메인명 캐릭터 라인의 상호 변환을 실시합니다.
각종 플래그를 사용하면, 전술의 변환 처리의 동작을 다음과 같이 조정할 수가 있습니다.
국제화 도메인명의 지원에 대해서는, 시큐리티를 고려하는 것이 중요합니다. 예를 들어, 영어의 도메인명에 대해서 「동형 이의어화」(비라틴 문자의 치환에 의한 악의가 있는 스펠 미스)을 하는 위험성이 있습니다. Unicode Technical Report #36 는, IDN 지원의 시큐리티상의 문제점과 가능한 해결책을 논의하고 있습니다. 어플리케이션은, 국제화 도메인명을 사용할 때에 적절한 시큐리티 대책을 베풀 책임이 있습니다.
필드의 개요 | |
---|---|
static int |
ALLOW_UNASSIGNED
미할당 코드 포인트의 처리를 허가하는 플래그. |
static int |
USE_STD3_ASCII_RULES
STD-3 ASCII 규칙에 근거하는 체크를 온으로 하는 플래그. |
메소드의 개요 | |
---|---|
static String |
toASCII (String input)
RFC 3490 의 ToASCII 조작의 정의에 따라, Unicode 로부터 ASCII 호환 인코딩 (ACE)에의 캐릭터 라인 변환을 실시합니다. |
static String |
toASCII (String input,
int flag)
RFC 3490 의 ToASCII 조작의 정의에 따라, Unicode 로부터 ASCII 호환 인코딩 (ACE)에의 캐릭터 라인 변환을 실시합니다. |
static String |
toUnicode (String input)
RFC 3490 의 ToUnicode 조작의 정의에 따라, ASCII 호환 인코딩 (ACE)으로부터 Unicode 에의 캐릭터 라인 변환을 실시합니다. |
static String |
toUnicode (String input,
int flag)
RFC 3490 의 ToUnicode 조작의 정의에 따라, ASCII 호환 인코딩 (ACE)으로부터 Unicode 에의 캐릭터 라인 변환을 실시합니다. |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
필드의 상세 |
---|
public static final int ALLOW_UNASSIGNED
public static final int USE_STD3_ASCII_RULES
메소드의 상세 |
---|
public static String toASCII(String input, int flag)
ToASCII 조작은 실패할 가능성이 있습니다. ToASCII 가 실패하는 것은, 그 임의의 스텝이 실패했을 경우입니다. ToASCII 조작이 실패하면(자), IllegalArgumentException 가 throw 됩니다. 이 경우, 그 입력 캐릭터 라인을 국제화 도메인명에 포함해야 하는 것이 아닙니다.
라벨이란, 도메인명의 개개의 부분입니다. RFC 3490 으로 정의되고 있는 원의 ToASCII 조작은, 단일 라벨상에서 밖에 동작하지 않습니다. 이 메소드는 라벨과 도메인명 전체의 양쪽 모두를 처리할 수 있습니다만, 그것은, 도메인명에 포함되는 라벨이 항상 닷으로 단락지어지고 있으면(자) 가정하는 것으로 실현되고 있습니다. 닷으로서 인식되는 문자는, 다음과 같습니다. \u002E (종지부), \u3002 (표 의종지부), \uFF0E (전각 종지부), 및 \uFF61 (반각표의종지부). 닷이 라벨 단락 문자로서 사용되고 있는 경우, 이 메소드는 게다가 변환 후의 출력 캐릭터 라인내에서 그러한 모든 것을 \u002E (종지부)로 변경합니다.
input
- 처리하는 캐릭터 라인flag
- 처리 플래그. 0, 가능한 플래그의 임의의 논리합의 언젠가
IllegalArgumentException
- 입력 캐릭터 라인이 RFC 3490 의 스펙에 준거하고 있지 않는 경우public static String toASCII(String input)
이 편리한 메소드는, 다음과 같이 2 개의 인수를 취하는 버젼을 호출하는것 같이 동작합니다.
toASCII
(input, 0);
input
- 처리하는 캐릭터 라인
IllegalArgumentException
- 입력 캐릭터 라인이 RFC 3490 의 스펙에 준거하고 있지 않는 경우public static String toUnicode(String input, int flag)
ToUnicode 가 실패하는 것은 결코 없습니다. 에러가 발생했을 경우는, 입력 캐릭터 라인이 그대로 돌려주어집니다.
라벨이란, 도메인명의 개개의 부분입니다. RFC 3490 으로 정의되고 있는 원의 ToUnicode 조작은, 단일 라벨상에서 밖에 동작하지 않습니다. 이 메소드는 라벨과 도메인명 전체의 양쪽 모두를 처리할 수 있습니다만, 그것은, 도메인명에 포함되는 라벨이 항상 닷으로 단락지어지고 있으면(자) 가정하는 것으로 실현되고 있습니다. 닷으로서 인식되는 문자는, 다음과 같습니다. \u002E (종지부), \u3002 (표 의종지부), \uFF0E (전각 종지부), 및 \uFF61 (반각표의종지부).
input
- 처리하는 캐릭터 라인flag
- 처리 플래그. 0, 가능한 플래그의 임의의 논리합의 언젠가
public static String toUnicode(String input)
이 편리한 메소드는, 다음과 같이 2 개의 인수를 취하는 버젼을 호출하는것 같이 동작합니다.
toASCII
(input, 0);
input
- 처리하는 캐릭터 라인
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.