UTF32Encoding.Preamble 속성

정의

개체가 하나를 제공하도록 구성된 경우 UTF-32 형식으로 인코딩된 유니코드 바이트 순서 표시를 가져옵니다.

public:
 virtual property ReadOnlySpan<System::Byte> Preamble { ReadOnlySpan<System::Byte> get(); };
public override ReadOnlySpan<byte> Preamble { get; }
member this.Preamble : ReadOnlySpan<byte>
Public Overrides ReadOnly Property Preamble As ReadOnlySpan(Of Byte)

속성 값

ReadOnlySpan<Byte>

이 개체가 하나를 제공하도록 구성된 경우 유니코드 바이트 순서 표시를 포함하는 바이트 범위입니다. 그렇지 않으면 기본 범위입니다.

설명

개체는 UTF32Encoding 인코딩 프로세스에서 발생하는 바이트 시퀀스에 접두사를 지정할 수 있는 바이트 범위인 프리앰블을 제공할 수 있습니다. 바이트 순서 표시(코드 포인트 U+0000 U+FEFF)를 사용하여 인코딩된 바이트 시퀀스를 앞에 두면 디코더가 바이트 순서 및 변환 형식 또는 UTF를 결정하는 데 도움이 됩니다. 유니코드 바이트 순서 표시 (BOM)는 다음과 같이 serialize 됩니다 (16 진수).

  • Big endian 바이트 순서: 00 00 FE FF

  • Little endian 바이트 순서: FF FE 00 00

다음과 같은 방법으로 속성이 Preamble 유효한 BOM인 개체를 인스턴스화 UTF32Encoding 할 수 있습니다.

태그가 지정되지 않았거나 부적절하게 태그가 지정된 웹 데이터 또는 비즈니스에 국제적인 문제나 기타 데이터가 없을 때 저장된 임의 텍스트 파일과 같이 개체에 대한 참조 UTF32Encoding 를 손실한 파일에 대한 인코딩을 거의 확실하게 식별할 수 있으므로 BOM을 사용하는 것이 좋습니다. 데이터가 일관되고 적절하게 태그가 지정된 경우 사용자 문제를 방지할 수 있는 경우가 많습니다.

인코딩 유형을 제공 하는 표준의 경우 BOM은 다소 중복 됩니다. 그러나 서버에서 올바른 인코딩 헤더를 보내는 데 사용할 수 있습니다. 또는 인코딩이 손실 되는 경우 대체 방법으로 사용할 수 있습니다.

BOM을 사용 하는 경우 몇 가지 단점이 있습니다. 예를 들어 BOM을 사용 하는 데이터베이스 필드를 제한 하는 방법을 알고 있는 것은 어려울 수 있습니다. 파일의 연결은 예를 들어 불필요 한 문자가 데이터 중간에 종료 될 수 있는 방식으로 파일을 병합 하는 경우에도 문제가 될 수 있습니다. 그러나 몇 가지 단점에도 불구 하 고 BOM을 사용 하는 것이 좋습니다.

바이트 순서 및 바이트 순서 표시에 대 한 자세한 내용은 유니코드 홈페이지에서 유니코드 표준을 참조 하세요.

중요

인코딩된 바이트가 올바르게 디코딩 되도록 하려면 인코딩된 바이트를 프리앰블을 접두사로 사용 해야 합니다. 메서드는 GetBytes 인코딩된 바이트 시퀀스에 BOM 앞에 추가되지 않습니다. 적절한 바이트 스트림의 시작 부분에 BOM을 제공하는 것은 개발자의 책임입니다.

적용 대상