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 namespace System;
using namespace System::Text;
using namespace System::Collections;
int main()
{
// Create a UTF-7 encoding.
UTF7Encoding^ utf7 = gcnew UTF7Encoding;
// A Unicode string with two characters outside a 7-bit code range.
String^ unicodeString = L"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.
array<Byte>^encodedBytes = utf7->GetBytes( unicodeString );
Console::WriteLine();
Console::WriteLine( "Encoded bytes:" );
IEnumerator^ myEnum = encodedBytes->GetEnumerator();
while ( myEnum->MoveNext() )
{
Byte b = safe_cast<Byte>(myEnum->Current);
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 );
}
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 오류 검색을 사용 하도록 설정 합니다.
에서 지원하는 System.TextUTF 및 기타 인코딩에 대한 자세한 내용은 .NET Framework 문자 인코딩을 참조하세요.
GetByteCount메서드는 유니코드 문자 집합을 인코딩할 바이트 수를 결정 하 고 GetBytes 메서드는 실제 인코딩을 수행 합니다.
마찬가지로 메서드는 GetCharCount 바이트 시퀀스를 디코딩하는 데 발생하는 문자 수를 결정하고 및 GetCharsGetString 메서드는 실제 디코딩을 수행합니다.
UTF7Encoding 는 Windows 코드 페이지 65000에 해당합니다.
참고
개체가 다른 .NET Framework 버전을 사용하여 직렬화되고 역직렬화되는 경우 UTF-7로 인코딩된 개체의 상태는 유지되지 않습니다.
생성자
UTF7Encoding() |
사용되지 않음.
UTF7Encoding 클래스의 새 인스턴스를 초기화합니다. |
UTF7Encoding(Boolean) |
사용되지 않음.
UTF7Encoding 클래스의 새 인스턴스를 초기화합니다. 매개 변수는 선택적 문자를 허용하는지 여부를 지정합니다. |
속성
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) |
메서드
Clone() |
파생 클래스에서 재정의되면 현재 Encoding 개체의 부분 복사본을 만듭니다. (다음에서 상속됨 Encoding) |
Equals(Object) |
지정한 개체가 현재 UTF7Encoding 개체와 같은지 여부를 나타내는 값을 가져옵니다. |
Equals(Object) |
지정한 Object가 현재 인스턴스와 같은지를 확인합니다. (다음에서 상속됨 Encoding) |
GetByteCount(Char*, Int32) |
지정한 문자 포인터에서 시작되는 문자 집합을 인코딩할 경우 생성되는 바이트 수를 계산합니다. |
GetByteCount(Char*, Int32) |
파생 클래스에서 재정의되면 지정한 문자 포인터에서 시작하는 문자 집합을 인코딩하여 생성되는 바이트 수를 계산합니다. (다음에서 상속됨 Encoding) |
GetByteCount(Char[]) |
파생 클래스에서 재정의되면 지정한 문자 배열의 모든 문자를 인코딩하여 생성되는 바이트 수를 계산합니다. (다음에서 상속됨 Encoding) |
GetByteCount(Char[], Int32, Int32) |
지정한 문자 배열의 문자 집합을 인코딩할 경우 생성되는 바이트 수를 계산합니다. |
GetByteCount(ReadOnlySpan<Char>) |
파생 클래스에서 재정의할 경우, 지정된 문자 범위의 문자를 인코딩하여 생성되는 바이트 수를 계산합니다. (다음에서 상속됨 Encoding) |
GetByteCount(String) |
지정한 String 개체의 문자를 인코딩하여 생성되는 바이트 수를 계산합니다. |
GetByteCount(String) |
파생 클래스에서 재정의되면 지정된 문자열의 문자를 인코딩하여 생성되는 바이트 수를 계산합니다. (다음에서 상속됨 Encoding) |
GetByteCount(String, Int32, Int32) |
파생 클래스에서 재정의할 경우, 지정된 문자열의 문자 집합을 인코딩하여 생성되는 바이트 수를 계산합니다. (다음에서 상속됨 Encoding) |
GetBytes(Char*, Int32, Byte*, Int32) |
지정한 문자 포인터에서 시작하는 문자 집합을 지정한 바이트 포인터에서 시작하여 저장되는 바이트 시퀀스로 인코딩합니다. |
GetBytes(Char*, Int32, Byte*, Int32) |
파생 클래스에서 재정의되면 지정한 문자 포인터에서 시작하는 문자 집합을 지정한 바이트 포인터에서 시작하여 저장되는 바이트 시퀀스로 인코딩합니다. (다음에서 상속됨 Encoding) |
GetBytes(Char[]) |
파생 클래스에서 재정의되면 지정한 문자 배열의 모든 문자를 바이트 시퀀스로 인코딩합니다. (다음에서 상속됨 Encoding) |
GetBytes(Char[], Int32, Int32) |
파생 클래스에서 재정의되면 지정한 문자 배열의 문자 집합을 바이트 시퀀스로 인코딩합니다. (다음에서 상속됨 Encoding) |
GetBytes(Char[], Int32, Int32, Byte[], Int32) |
지정한 문자 배열의 문자 집합을 지정한 바이트 배열로 인코딩합니다. |
GetBytes(ReadOnlySpan<Char>, Span<Byte>) |
파생 클래스에서 재정의할 경우, 지정된 읽기 전용 범위의 문자 집합을 바이트 범위로 인코딩합니다. (다음에서 상속됨 Encoding) |
GetBytes(String) |
파생 클래스에서 재정의되면 지정한 문자열의 모든 문자를 바이트 시퀀스로 인코딩합니다. (다음에서 상속됨 Encoding) |
GetBytes(String, Int32, Int32) |
파생 클래스에서 재정의할 경우, 지정된 |
GetBytes(String, Int32, Int32, Byte[], Int32) |
지정된 String의 문자 집합을 지정된 바이트 배열로 인코딩합니다. |
GetBytes(String, Int32, Int32, Byte[], Int32) |
파생 클래스에서 재정의되면 지정한 문자열의 문자 집합을 지정한 바이트 배열로 인코딩합니다. (다음에서 상속됨 Encoding) |
GetCharCount(Byte*, Int32) |
지정한 바이트 포인터에서 시작되는 바이트 시퀀스를 디코딩할 경우 생성되는 문자 수를 계산합니다. |
GetCharCount(Byte*, Int32) |
파생 클래스에서 재정의되면 지정한 바이트 포인터에서 시작하는 바이트 시퀀스를 디코딩하여 생성되는 문자 수를 계산합니다. (다음에서 상속됨 Encoding) |
GetCharCount(Byte[]) |
파생 클래스에서 재정의되면 지정한 바이트 배열의 모든 바이트를 디코딩하여 생성되는 문자 수를 계산합니다. (다음에서 상속됨 Encoding) |
GetCharCount(Byte[], Int32, Int32) |
지정한 바이트 배열의 바이트 시퀀스를 디코딩할 경우 생성되는 문자 수를 계산합니다. |
GetCharCount(ReadOnlySpan<Byte>) |
파생 클래스에서 재정의할 경우, 제공된 읽기 전용 바이트 범위를 디코딩하여 생성되는 문자 수를 계산합니다. (다음에서 상속됨 Encoding) |
GetChars(Byte*, Int32, Char*, Int32) |
지정한 바이트 포인터에서 시작하는 바이트 시퀀스를 지정한 문자 포인터에서 시작하여 저장되는 문자 집합으로 디코딩합니다. |
GetChars(Byte*, Int32, Char*, Int32) |
파생 클래스에서 재정의되면 지정한 바이트 포인터에서 시작하는 바이트 시퀀스를 지정한 문자 포인터에서 시작하여 저장되는 문자 집합으로 디코딩합니다. (다음에서 상속됨 Encoding) |
GetChars(Byte[]) |
파생 클래스에서 재정의되면 지정한 바이트 배열의 모든 바이트를 문자 집합으로 디코딩합니다. (다음에서 상속됨 Encoding) |
GetChars(Byte[], Int32, Int32) |
파생 클래스에서 재정의되면 지정한 바이트 배열의 바이트 시퀀스를 문자 집합으로 디코딩합니다. (다음에서 상속됨 Encoding) |
GetChars(Byte[], Int32, 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) |
파생 클래스에서 재정의할 때 지정된 주소에서 시작하는 지정된 바이트 수를 문자열로 디코딩합니다. (다음에서 상속됨 Encoding) |
GetString(Byte[]) |
파생 클래스에서 재정의되면 지정한 바이트 배열의 모든 바이트를 문자열로 디코딩합니다. (다음에서 상속됨 Encoding) |
GetString(Byte[], Int32, Int32) |
바이트 배열의 바이트 범위를 문자열로 디코딩합니다. |
GetString(Byte[], Int32, Int32) |
파생 클래스에서 재정의되면 지정한 바이트 배열의 바이트 시퀀스를 문자열로 디코딩합니다. (다음에서 상속됨 Encoding) |
GetString(ReadOnlySpan<Byte>) |
파생 클래스에서 재정의할 경우, 지정된 바이트 범위의 모든 바이트를 문자열로 디코딩합니다. (다음에서 상속됨 Encoding) |
GetType() |
현재 인스턴스의 Type을 가져옵니다. (다음에서 상속됨 Object) |
IsAlwaysNormalized() |
기본 정규화 형식을 사용하여 현재 인코딩이 항상 정규화되는지를 나타내는 값을 가져옵니다. (다음에서 상속됨 Encoding) |
IsAlwaysNormalized(NormalizationForm) |
파생 클래스에서 재정의되면 지정한 정규화 형식을 사용하여 현재 인코딩이 항상 정규화되는지를 나타내는 값을 가져옵니다. (다음에서 상속됨 Encoding) |
MemberwiseClone() |
현재 Object의 단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
ToString() |
현재 개체를 나타내는 문자열을 반환합니다. (다음에서 상속됨 Object) |
TryGetBytes(ReadOnlySpan<Char>, Span<Byte>, Int32) |
대상이 충분히 큰 경우 지정된 읽기 전용 범위의 문자 집합을 바이트 범위로 인코딩합니다. (다음에서 상속됨 Encoding) |
TryGetChars(ReadOnlySpan<Byte>, Span<Char>, Int32) |
대상이 충분히 큰 경우 지정된 읽기 전용 범위에서 바이트 집합을 chars 범위로 디코딩합니다. (다음에서 상속됨 Encoding) |
확장 메서드
GetBytes(Encoding, ReadOnlySequence<Char>) |
지정된 Encoding을 사용하여 지정된 ReadOnlySequence<T>을 Byte 배열로 인코딩합니다. |
GetBytes(Encoding, ReadOnlySequence<Char>, IBufferWriter<Byte>) |
지정된 Encoding을 사용하여 지정된 ReadOnlySequence<T>을 |
GetBytes(Encoding, ReadOnlySequence<Char>, Span<Byte>) |
지정된 Encoding을 사용하여 지정된 ReadOnlySequence<T>을 |
GetBytes(Encoding, ReadOnlySpan<Char>, IBufferWriter<Byte>) |
지정된 Encoding을 사용하여 지정된 ReadOnlySpan<T>을 |
GetChars(Encoding, ReadOnlySequence<Byte>, IBufferWriter<Char>) |
지정된 Encoding을 사용하여 지정된 ReadOnlySequence<T>을 |
GetChars(Encoding, ReadOnlySequence<Byte>, Span<Char>) |
지정된 Encoding을 사용하여 지정된 ReadOnlySequence<T>을 |
GetChars(Encoding, ReadOnlySpan<Byte>, IBufferWriter<Char>) |
지정된 Encoding을 사용하여 지정된 ReadOnlySpan<T>을 |
GetString(Encoding, ReadOnlySequence<Byte>) |
지정된 Encoding을 사용하여 지정된 ReadOnlySequence<T>을 String으로 디코딩합니다. |
적용 대상
추가 정보
.NET