Encoding.Preamble Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Cuando se reemplaza en una clase derivada, devuelve un intervalo que contiene la secuencia de bytes que especifica la codificación usada.
public:
virtual property ReadOnlySpan<System::Byte> Preamble { ReadOnlySpan<System::Byte> get(); };
public virtual ReadOnlySpan<byte> Preamble { get; }
member this.Preamble : ReadOnlySpan<byte>
Public Overridable ReadOnly Property Preamble As ReadOnlySpan(Of Byte)
Valor de propiedad
Intervalo de bytes que contiene una secuencia de bytes que especifica la codificación utilizada o un intervalo de longitud cero, si no se requiere un preámbulo.
Comentarios
Opcionalmente, el Encoding objeto proporciona un preámbulo que es una secuencia de bytes que se puede prefijar a los bytes resultantes del proceso de codificación. Si el preámbulo contiene una marca de orden de bytes (en Unicode, punto de código U+FEFF), ayuda al descodificador a determinar el orden de bytes y el formato de transformación o UTF.
La marca de orden de bytes Unicode (BOM) se serializa de la siguiente manera (en hexadecimal):
UTF-8: EF BB BF
Orden de bytes big endian UTF-16: FE FF
UTF-16 little endian byte order: FF FE
Orden de bytes de UTF-32 big endian: 00 00 FE FF
Orden de bytes de UTF-32 little endian: FF FE 00 00
Debe usar la lista de materiales, ya que proporciona casi cierta identificación de una codificación para archivos que, de lo contrario, han perdido referencia al Encoding objeto, por ejemplo, datos web sin etiquetar o archivos de texto aleatorios etiquetados incorrectamente cuando una empresa no tenía problemas internacionales u otros datos. A menudo, es posible que se eviten problemas de usuario si los datos se etiquetan de forma coherente y correcta, preferiblemente en UTF-8 o UTF-16.
En el caso de los estándares que proporcionan un tipo de codificación, una boM es algo redundante. Sin embargo, se puede usar para ayudar a un servidor a enviar el encabezado de codificación correcto. Como alternativa, se puede usar como reserva en caso de que se pierda la codificación.
Hay algunas desventajas en el uso de una lista de materiales. Por ejemplo, saber cómo limitar los campos de base de datos que usan una lista de materiales puede ser difícil. La concatenación de archivos también puede ser un problema, por ejemplo, cuando los archivos se combinan de forma que un carácter innecesario pueda acabar en medio de los datos. Sin embargo, a pesar de las pocas desventajas, se recomienda encarecidamente el uso de una lista de materiales.
Para obtener más información sobre el orden de bytes y la marca de orden de bytes, vea El estándar Unicode en la página principal de Unicode.
Caution
Para asegurarse de que los bytes codificados están descodificados correctamente, debe prefijar los bytes codificados con un preámbulo. Sin embargo, la mayoría de las codificaciones no proporcionan un preámbulo. Para asegurarse de que los bytes codificados están descodificados correctamente, debe usar una codificación Unicode, es decir, UTF8Encoding, UnicodeEncodingo UTF32Encoding, con un preámbulo.