UTF7Encoding 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
유니코드 문자의 UTF-7 인코딩을 나타냅니다.
public ref class UTF7Encoding : System::Text::Encoding
public class UTF7Encoding : System.Text.Encoding
[System.Serializable]
public class UTF7Encoding : System.Text.Encoding
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class UTF7Encoding : System.Text.Encoding
type UTF7Encoding = class
inherit Encoding
[<System.Serializable>]
type UTF7Encoding = class
inherit Encoding
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type UTF7Encoding = class
inherit Encoding
Public Class UTF7Encoding
Inherits Encoding
- 상속
- 특성
예제
다음 코드 예제에서는 유니코드 문자의 문자열을 UTF7Encoding 인코딩하고 바이트 배열에 저장하는 방법을 보여 줍니다. 바이트 배열을 문자열로 다시 디코딩하면 데이터가 손실되지 않습니다.
using System;
using System.Text;
class UTF7EncodingExample {
public static void Main() {
// Create a UTF-7 encoding.
UTF7Encoding utf7 = new UTF7Encoding();
// A Unicode string with two characters outside a 7-bit code range.
String unicodeString =
"This Unicode string contains two characters " +
"with codes outside a 7-bit code range, " +
"Pi (\u03a0) and Sigma (\u03a3).";
Console.WriteLine("Original string:");
Console.WriteLine(unicodeString);
// Encode the string.
Byte[] encodedBytes = utf7.GetBytes(unicodeString);
Console.WriteLine();
Console.WriteLine("Encoded bytes:");
foreach (Byte b in encodedBytes) {
Console.Write("[{0}]", b);
}
Console.WriteLine();
// Decode bytes back to string.
// Notice Pi and Sigma characters are still present.
String decodedString = utf7.GetString(encodedBytes);
Console.WriteLine();
Console.WriteLine("Decoded bytes:");
Console.WriteLine(decodedString);
}
}
Imports System.Text
Imports Microsoft.VisualBasic.Strings
Class UTF7EncodingExample
Public Shared Sub Main()
' Create a UTF-7 encoding.
Dim utf7 As New UTF7Encoding()
' A Unicode string with two characters outside a 7-bit code range.
Dim unicodeString As String = _
"This Unicode string contains two characters " & _
"with codes outside a 7-bit code range, " & _
"Pi (" & ChrW(928) & ") and Sigma (" & ChrW(931) & ")."
Console.WriteLine("Original string:")
Console.WriteLine(unicodeString)
' Encode the string.
Dim encodedBytes As Byte() = utf7.GetBytes(unicodeString)
Console.WriteLine()
Console.WriteLine("Encoded bytes:")
Dim b As Byte
For Each b In encodedBytes
Console.Write("[{0}]", b)
Next b
Console.WriteLine()
' Decode bytes back to string.
' Notice Pi and Sigma characters are still present.
Dim decodedString As String = utf7.GetString(encodedBytes)
Console.WriteLine()
Console.WriteLine("Decoded bytes:")
Console.WriteLine(decodedString)
End Sub
End Class
설명
인코딩은 유니코드 문자 집합을 바이트 시퀀스로 변환하는 프로세스입니다. 디코딩은 인코딩된 바이트 시퀀스를 유니코드 문자 집합으로 변환하는 프로세스입니다.
UTF-7 인코딩은 유니코드 문자를 7비트 ASCII 문자의 시퀀스로 나타냅니다. 이 인코딩은 필요한 특정 프로토콜(대부분 이메일 또는 뉴스 그룹 프로토콜)을 지원합니다. UTF-7은 특히 안전하거나 강력하지 않으며 대부분의 최신 시스템에서 8비트 인코딩을 허용하므로 UTF-8은 일반적으로 UTF-7을 선호해야 합니다.
메모
UTF7Encoding에서는 오류 감지를 제공하지 않습니다. 보안상의 이유로 애플리케이션은 UTF8Encoding, UnicodeEncoding, 또는 UTF32Encoding를 사용하고 오류 감지를 활성화해야 합니다.
UTF 및 지원되는 System.Text기타 인코딩에 대한 자세한 내용은 .NET Framework의 문자 인코딩을 참조하세요.
메서드는 GetByteCount 유니코드 문자 집합을 인코딩하는 결과 바이트 수를 결정하고 메서드는 GetBytes 실제 인코딩을 수행합니다.
마찬가지로 메서드는 GetCharCount 바이트 시퀀스를 디코딩하는 결과 문자 수를 결정하고, 메서드와 GetChars 메서드는 GetString 실제 디코딩을 수행합니다.
UTF7Encoding Windows 코드 페이지 65000에 해당합니다.
메모
개체가 서로 다른 .NET Framework 버전을 사용하여 직렬화되고 역직렬화되는 경우 UTF-7로 인코딩된 개체의 상태는 유지되지 않습니다.
생성자
| Name | Description |
|---|---|
| UTF7Encoding() |
UTF7Encoding 클래스의 새 인스턴스를 초기화합니다. |
| UTF7Encoding(Boolean) |
UTF7Encoding 클래스의 새 인스턴스를 초기화합니다. 매개 변수는 선택적 문자를 허용할지 여부를 지정합니다. |
속성
| Name | Description |
|---|---|
| BodyName |
파생 클래스에서 재정의되는 경우 메일 에이전트 본문 태그와 함께 사용할 수 있는 현재 인코딩의 이름을 가져옵니다. (다음에서 상속됨 Encoding) |
| CodePage |
파생 클래스에서 재정의된 경우 현재 Encoding클래스의 코드 페이지 식별자를 가져옵니다. (다음에서 상속됨 Encoding) |
| DecoderFallback |
현재 DecoderFallback 개체의 Encoding 개체를 가져오거나 설정합니다. (다음에서 상속됨 Encoding) |
| EncoderFallback |
현재 EncoderFallback 개체의 Encoding 개체를 가져오거나 설정합니다. (다음에서 상속됨 Encoding) |
| EncodingName |
파생 클래스에서 재정의되는 경우 현재 인코딩에 대한 사람이 읽을 수 있는 설명을 가져옵니다. (다음에서 상속됨 Encoding) |
| HeaderName |
파생 클래스에서 재정의되는 경우 메일 에이전트 헤더 태그와 함께 사용할 수 있는 현재 인코딩의 이름을 가져옵니다. (다음에서 상속됨 Encoding) |
| IsBrowserDisplay |
파생 클래스에서 재정의되는 경우 현재 인코딩을 브라우저 클라이언트에서 콘텐츠를 표시하는 데 사용할 수 있는지 여부를 나타내는 값을 가져옵니다. (다음에서 상속됨 Encoding) |
| IsBrowserSave |
파생 클래스에서 재정의되는 경우 현재 인코딩을 브라우저 클라이언트에서 콘텐츠를 저장하는 데 사용할 수 있는지 여부를 나타내는 값을 가져옵니다. (다음에서 상속됨 Encoding) |
| IsMailNewsDisplay |
파생 클래스에서 재정의되는 경우 현재 인코딩을 메일 및 뉴스 클라이언트에서 콘텐츠를 표시하는 데 사용할 수 있는지 여부를 나타내는 값을 가져옵니다. (다음에서 상속됨 Encoding) |
| IsMailNewsSave |
파생 클래스에서 재정의되는 경우 현재 인코딩을 메일 및 뉴스 클라이언트에서 콘텐츠를 저장하는 데 사용할 수 있는지 여부를 나타내는 값을 가져옵니다. (다음에서 상속됨 Encoding) |
| IsReadOnly |
파생 클래스에서 재정의되는 경우 현재 인코딩이 읽기 전용인지 여부를 나타내는 값을 가져옵니다. (다음에서 상속됨 Encoding) |
| IsSingleByte |
파생 클래스에서 재정의되는 경우 현재 인코딩에서 싱글 바이트 코드 포인트를 사용하는지 여부를 나타내는 값을 가져옵니다. (다음에서 상속됨 Encoding) |
| Preamble |
파생 클래스에서 재정의되는 경우 사용된 인코딩을 지정하는 바이트 시퀀스가 포함된 범위를 반환합니다. (다음에서 상속됨 Encoding) |
| WebName |
파생 클래스에서 재정의되는 경우 현재 인코딩에 대한 IANA(Internet Assigned Numbers Authority)에 등록된 이름을 가져옵니다. (다음에서 상속됨 Encoding) |
| WindowsCodePage |
파생 클래스에서 재정의되는 경우 현재 인코딩에 가장 가까운 Windows 운영 체제 코드 페이지를 가져옵니다. (다음에서 상속됨 Encoding) |
메서드
| Name | Description |
|---|---|
| Clone() |
파생 클래스에서 재정의되는 경우 현재 Encoding 개체의 단순 복사본을 만듭니다. (다음에서 상속됨 Encoding) |
| Equals(Object) |
지정한 개체가 현재 UTF7Encoding 개체와 같은지 여부를 나타내는 값을 가져옵니다. |
| Equals(Object) |
지정된 Object 인스턴스가 현재 인스턴스와 같은지 여부를 확인합니다. (다음에서 상속됨 Encoding) |
| GetByteCount(Char[], Int32, Int32) |
지정된 문자 배열의 문자 집합을 인코딩하여 생성되는 바이트 수를 계산합니다. |
| GetByteCount(Char[]) |
파생 클래스에서 재정의되는 경우 지정된 문자 배열의 모든 문자를 인코딩하여 생성된 바이트 수를 계산합니다. (다음에서 상속됨 Encoding) |
| GetByteCount(Char*, Int32) |
지정된 문자 포인터에서 시작하는 문자 집합을 인코딩하여 생성되는 바이트 수를 계산합니다. |
| GetByteCount(ReadOnlySpan<Char>) |
파생 클래스에서 재정의되는 경우 지정된 문자 범위의 문자를 인코딩하여 생성되는 바이트 수를 계산합니다. (다음에서 상속됨 Encoding) |
| GetByteCount(String, Int32, Int32) |
파생 클래스에서 재정의되는 경우 지정된 문자열의 문자 집합을 인코딩하여 생성되는 바이트 수를 계산합니다. (다음에서 상속됨 Encoding) |
| GetByteCount(String) |
지정된 String 개체의 문자를 인코딩하여 생성되는 바이트 수를 계산합니다. |
| GetByteCount(String) |
파생 클래스에서 재정의되는 경우 지정된 문자열의 문자를 인코딩하여 생성된 바이트 수를 계산합니다. (다음에서 상속됨 Encoding) |
| GetBytes(Char[], Int32, Int32, Byte[], Int32) |
지정된 문자 배열의 문자 집합을 지정된 바이트 배열로 인코딩합니다. |
| GetBytes(Char[], Int32, Int32) |
파생 클래스에서 재정의되는 경우 지정된 문자 배열의 문자 집합을 바이트 시퀀스로 인코딩합니다. (다음에서 상속됨 Encoding) |
| GetBytes(Char[]) |
파생 클래스에서 재정의되는 경우 지정된 문자 배열의 모든 문자를 바이트 시퀀스로 인코딩합니다. (다음에서 상속됨 Encoding) |
| GetBytes(Char*, Int32, Byte*, Int32) |
지정된 문자 포인터에서 시작하는 문자 집합을 지정된 바이트 포인터에서 시작하여 저장되는 바이트 시퀀스로 인코딩합니다. |
| GetBytes(ReadOnlySpan<Char>, Span<Byte>) |
파생 클래스에서 재정의되는 경우 지정된 읽기 전용 범위의 문자 집합을 바이트 범위로 인코딩합니다. (다음에서 상속됨 Encoding) |
| GetBytes(String, Int32, Int32, Byte[], Int32) |
지정된 문자 집합을 지정된 String 바이트 배열로 인코딩합니다. |
| GetBytes(String, Int32, Int32, Byte[], Int32) |
파생 클래스에서 재정의되는 경우 지정된 문자열의 문자 집합을 지정된 바이트 배열로 인코딩합니다. (다음에서 상속됨 Encoding) |
| GetBytes(String, Int32, Int32) |
파생 클래스에서 재정의되는 경우 지정된 문자열에서 지정된 |
| GetBytes(String) |
파생 클래스에서 재정의되는 경우 지정된 문자열의 모든 문자를 바이트 시퀀스로 인코딩합니다. (다음에서 상속됨 Encoding) |
| GetCharCount(Byte[], Int32, Int32) |
지정된 바이트 배열에서 바이트 시퀀스를 디코딩하여 생성된 문자 수를 계산합니다. |
| GetCharCount(Byte[]) |
파생 클래스에서 재정의되는 경우 지정된 바이트 배열의 모든 바이트를 디코딩하여 생성된 문자 수를 계산합니다. (다음에서 상속됨 Encoding) |
| GetCharCount(Byte*, Int32) |
지정된 바이트 포인터에서 시작하는 바이트 시퀀스를 디코딩하여 생성된 문자 수를 계산합니다. |
| GetCharCount(ReadOnlySpan<Byte>) |
파생 클래스에서 재정의되는 경우 제공된 읽기 전용 바이트 범위를 디코딩하여 생성된 문자 수를 계산합니다. (다음에서 상속됨 Encoding) |
| GetChars(Byte[], Int32, Int32, Char[], Int32) |
지정된 바이트 배열에서 지정된 문자 배열로 바이트 시퀀스를 디코딩합니다. |
| GetChars(Byte[], Int32, Int32) |
파생 클래스에서 재정의되는 경우 지정된 바이트 배열의 바이트 시퀀스를 문자 집합으로 디코딩합니다. (다음에서 상속됨 Encoding) |
| GetChars(Byte[]) |
파생 클래스에서 재정의되는 경우 지정된 바이트 배열의 모든 바이트를 문자 집합으로 디코딩합니다. (다음에서 상속됨 Encoding) |
| GetChars(Byte*, Int32, Char*, Int32) |
지정된 바이트 포인터에서 시작하는 바이트 시퀀스를 지정된 문자 포인터에서 시작하여 저장되는 문자 집합으로 디코딩합니다. |
| GetChars(ReadOnlySpan<Byte>, Span<Char>) |
파생 클래스에서 재정의되는 경우 지정된 읽기 전용 바이트 범위의 모든 바이트를 문자 범위로 디코딩합니다. (다음에서 상속됨 Encoding) |
| GetDecoder() |
UTF-7로 인코딩된 바이트 시퀀스를 유니코드 문자 시퀀스로 변환하는 디코더를 가져옵니다. |
| GetEncoder() |
유니코드 문자 시퀀스를 UTF-7로 인코딩된 바이트 시퀀스로 변환하는 인코더를 가져옵니다. |
| GetHashCode() |
현재 UTF7Encoding 개체의 해시 코드를 반환합니다. |
| GetHashCode() |
현재 인스턴스의 해시 코드를 반환합니다. (다음에서 상속됨 Encoding) |
| GetMaxByteCount(Int32) |
지정된 문자 수를 인코딩하여 생성되는 최대 바이트 수를 계산합니다. |
| GetMaxCharCount(Int32) |
지정된 바이트 수를 디코딩하여 생성되는 최대 문자 수를 계산합니다. |
| GetPreamble() |
파생 클래스에서 재정의되는 경우 사용된 인코딩을 지정하는 바이트 시퀀스를 반환합니다. (다음에서 상속됨 Encoding) |
| GetString(Byte[], Int32, Int32) |
바이트 배열에서 문자열로 바이트 범위를 디코딩합니다. |
| GetString(Byte[], Int32, Int32) |
파생 클래스에서 재정의되는 경우 지정된 바이트 배열의 바이트 시퀀스를 문자열로 디코딩합니다. (다음에서 상속됨 Encoding) |
| GetString(Byte[]) |
파생 클래스에서 재정의되는 경우 지정된 바이트 배열의 모든 바이트를 문자열로 디코딩합니다. (다음에서 상속됨 Encoding) |
| GetString(Byte*, Int32) |
파생 클래스에서 재정의되는 경우 지정된 주소에서 시작하는 지정된 바이트 수를 문자열로 디코딩합니다. (다음에서 상속됨 Encoding) |
| GetString(ReadOnlySpan<Byte>) |
파생 클래스에서 재정의되는 경우 지정된 바이트 범위의 모든 바이트를 문자열로 디코딩합니다. (다음에서 상속됨 Encoding) |
| GetType() |
현재 인스턴스의 Type 가져옵니다. (다음에서 상속됨 Object) |
| IsAlwaysNormalized() |
기본 정규화 형식을 사용하여 현재 인코딩이 항상 정규화되는지 여부를 나타내는 값을 가져옵니다. (다음에서 상속됨 Encoding) |
| IsAlwaysNormalized(NormalizationForm) |
파생 클래스에서 재정의되는 경우 지정된 정규화 양식을 사용하여 현재 인코딩이 항상 정규화되는지 여부를 나타내는 값을 가져옵니다. (다음에서 상속됨 Encoding) |
| MemberwiseClone() |
현재 Object단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
| ToString() |
현재 개체를 나타내는 문자열을 반환합니다. (다음에서 상속됨 Object) |