PRB : Analyseur XML ne peut pas analyser les Documents UTF-7

Symptômes

Lorsque vous tentez de charger un fichier XML enregistré en tant que UTF-7 (un transfert de format de codage Unicode), l’analyseur XML dans Internet Explorer génère le message d’erreur suivant :

Non valide au niveau supérieur du document.

La même erreur se produit également lors de l’utilisation de l’analyseur MSXML à partir du script côté serveur ou côté client.

Cause

Versions de l’analyseur MSXML avant MSXML 2.6 ne sont pas compatibles UTF-7.

Résolution

Pour résoudre ce problème, enregistrez vos documents XML en tant que UTF-8, le format de codage de transfert par défaut pour Unicode.MSXML 2.6 ou version ultérieure prend en charge le codage UTF-7.

Statut

Ce comportement est inhérent au produit.

Informations supplémentaires

Bien qu’Unicode soit un uniforme jeu de caractères représentant presque toutes les langues du monde, il y a plusieurs représentations d’octets, ou formats de transformation, un fichier Unicode peut utiliser. Le format le plus répandu est UTF-8, qui représente les caractères Unicode sous la forme d’une séquence d’un à quatre octets de 8 bits. UTF-7 est un format de transformation de 7 bits défini pour autoriser le texte Unicode à traverser les passerelles de messagerie qui supposent ASCII et enlever le bit élevé de messages de texte. Basé sur la norme XML 1.0, chapitre 4.3.3, un fichier XML valide est nécessaire pour être une des manières suivantes :

  • Un fichier Unicode au format UTF-8.

  • Un fichier Unicode en format UTF-16.

  • Un fichier dans un autre codage de caractère (par exemple, ASCII) qui a comme son tout premiers octets la

UTF-7 n’utilise pas la marque d’ordre d’octet. En outre, convertit UTF-7 < de caractères XML spéciaux à + ADw, qui finit par être le premier caractère de l’UTF-7 codée en document XML. Dans la mesure où cela n’est pas conforme à la norme XML, MSXML refuse de charger ces fichiers. De nombreux éditeurs de texte et de traitement de texte permettent d’enregistrer des fichiers de texte Unicode, appelés le texte codé dans Microsoft Word, de nombreux codages de transfert différents, y compris UTF-7. Ainsi, si vous enregistrez un document dans Word sous la forme « texte codé UTF-7 », MSXML refuse de charger pour les raisons susmentionnées.

Procédure pour reproduire le comportement

  1. Créer un simple fichier XML dans Word 2000 :

    <?xml version="1.0"?><MyTag><EmbeddedTag name1="value"/></MyTag>
  2. Enregistrez le fichier sous forme de texte codé. Lorsque Word vous demande si vous souhaitez perdre la mise en forme, cliquez sur Oui. Word vous invitera ensuite pour un format de codage à utiliser. Sélectionnez UTF-7et puis enregistrez le document sous le nom de fichier cap TestUTF7.xml.

  3. Charger le nom de fichier cap TestUTF7.xml dans Internet Explorer 5. Vous recevrez le message d’erreur suivant :

    Non valide au niveau supérieur du document. La ligne 1, Position 1 + ADw- ? xml version + AD0AIg - 1.0 + ACI- ? + AD4-.

Références

Pour le dernier Microsoft Global Software Development http://www.unicode.org/ pour le dernier Unicode Standard.Pour plus d’informations sur le développement de solutions Web pour Microsoft Internet Explorer, visitez les sites Web de Microsoft à l’adresse suivante :

http://msdn.microsoft.com/ie/ http://support.microsoft.com/iep(c) Microsoft Corporation 2000, tous droits réservés. Contributions par Jay Andrew Allen, Microsoft Corporation.

Besoin d’aide ?

Développez vos compétences
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoindre Microsoft Insider

Ces informations vous ont-elles été utiles ?

Nous vous remercions pour vos commentaires.

Merci pour vos commentaires. Il serait vraisemblablement utile pour vous de contacter l’un de nos agents du support Office.

×