UTF8Encoding.Preamble Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient une marque d’ordre d’octet Unicode encodée au format UTF-8 si cet objet est configuré pour en fournir une.
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)
Valeur de propriété
Étendue d’octets contenant la marque d’ordre d’octet Unicode, si cet objet est configuré pour en fournir un; sinon, l’étendue par défaut.
Remarques
L’objet UTF8Encoding peut fournir un préambule, qui est une étendue d’octets qui peut être précédée de la séquence d’octets résultant du processus d’encodage. La précédation d’une séquence d’octets codés avec une marque d’ordre d’octets (point U+FEFF
de code) aide le décodeur à déterminer l’ordre d’octet et le format de transformation, ou UTF. La marque d’ordre d’octet Unicode (BOM) est sérialisée en tant que 0xEF 0xBB 0xBF. Notez que la norme Unicode ne nécessite ni recommande l’utilisation d’un boM pour les flux codés UTF-8.
Vous pouvez instancier un UTF8Encoding objet dont Preamble
le nom est un boM valide de la manière suivante :
En récupérant l’objet UTF8Encoding retourné par la Encoding.UTF8 propriété.
En appelant un UTF8Encoding constructeur avec un
encoderShouldEmitUTF8Identifier
paramètre et en définissant sa valeur définie surtrue
.
Tous les autres UTF8Encoding objets sont configurés pour retourner une étendue par défaut plutôt qu’un boM valide.
Le boM fournit presque certaines identifications d’un encodage pour les fichiers qui, sinon, ont perdu une référence à leur encodage, comme les données web non étiquetées ou les fichiers texte aléatoires stockés lorsqu’une entreprise n’a pas de préoccupations internationales. Souvent, les problèmes utilisateur peuvent être évités si les données sont cohérentes et correctement étiquetées.
Pour les normes qui fournissent un type d’encodage, une nomenclature est un peu redondante. Toutefois, il peut être utilisé pour aider un serveur à envoyer l’en-tête d’encodage correct. Vous pouvez également l’utiliser comme secours au cas où l’encodage serait perdu.
L’utilisation d’une nomenclature présente quelques inconvénients. Par exemple, il peut être difficile de savoir comment limiter les champs de base de données qui utilisent une nomenclature. La concaténation de fichiers peut également être un problème, par exemple, lorsque des fichiers sont fusionnés de manière à ce qu’un caractère inutile puisse se retrouver au milieu des données. Malgré les quelques inconvénients, toutefois, l’utilisation d’une nomenclature est fortement recommandée.
Pour plus d’informations sur l’ordre d’octet et la marque d’ordre d’octet, consultez la norme Unicode sur la page d’hébergement Unicode.
Important
Pour vous assurer que les octets encodés sont décodés correctement lorsqu’ils sont enregistrés en tant que fichier ou en tant que flux, vous pouvez préfixer le début d’un flux d’octets codés avec un préambule. Notez que la GetBytes méthode ne prépendait pas de boM à une séquence d’octets encodés ; l’approvisionnement d’un boM au début d’un flux d’octets approprié est la responsabilité du développeur.