Συμπτώματα

Όταν επιχειρείτε να φορτώσετε ένα αρχείο XML που έχει αποθηκευτεί ως UTF-7 (μεταβίβαση κωδικοποίηση μορφή για Unicode), το πρόγραμμα ανάλυσης XML στον Internet Explorer δημιουργεί το ακόλουθο μήνυμα λάθους:

Δεν είναι έγκυρο στο ανώτατο επίπεδο του εγγράφου.

Το ίδιο σφάλμα προκύπτει επίσης, κατά τη χρήση του προγράμματος ανάλυσης MSXML parser από μια δέσμη ενεργειών του διακομιστή ή πλευράς προγράμματος-πελάτη.

Αιτία

Εκδόσεις του προγράμματος ανάλυσης MSXML parser πριν από το MSXML 2.6 δεν υποστηρίζουν UTF-7.

Επίλυση

Για να επιλύσετε αυτό το πρόβλημα, αποθηκεύστε τα έγγραφα XML ως UTF-8, η μεταφορά προτιμώμενη μορφή κωδικοποίησης για Unicode.MSXML 2.6 ή νεότερη έκδοση υποστηρίζει την κωδικοποίηση UTF-7.

Κατάσταση

Αυτή η συμπεριφορά οφείλεται στη σχεδίαση.

Περισσότερες πληροφορίες

Παρόλο που το Unicode είναι ένα ενιαίο σύνολο που αναπαριστούν σχεδόν γλωσσών του κόσμου χαρακτήρων, υπάρχουν πολλές παραστάσεις byte ή μορφές μετασχηματισμού, που μπορεί να χρησιμοποιήσει ένα αρχείο Unicode. Η πιο δημοφιλής μορφή είναι UTF-8, το οποίο αντιπροσωπεύει χαρακτήρες Unicode ως ακολουθία ένα έως τέσσερα byte 8-bit. UTF-7 είναι μια μορφή μετασχηματισμού 7-bit ορίζεται για να επιτρέψετε κείμενο Unicode για να περάσουν οι πύλες αλληλογραφίας που προϋποθέτουν ASCII και διαγράψετε το υψηλό bit του μηνύματα κειμένου. Με βάση το πρότυπο XML 1.0, σημείο 4.3.3, ένα έγκυρο αρχείο XML είναι απαραίτητο να είναι ένα από τα εξής:

  • Ένα αρχείο Unicode σε μορφή UTF-8.

  • Ένα αρχείο Unicode σε μορφή UTF-16.

  • Ένα αρχείο σε κάποια άλλη κωδικοποίηση χαρακτήρων (για παράδειγμα, ASCII) που έχει ως την πρώτη byte το

Δεν χρησιμοποιεί το σημάδι σειρά Byte UTF-7. Επίσης, UTF-7 μετατρέπει το ειδικό XML χαρακτήρα < σε + ADw, που να τον πρώτο χαρακτήρα της UTF-7 κωδικοποιημένο έγγραφο XML. Δεδομένου ότι αυτό δεν είναι συμβατό με το πρότυπο XML, MSXML αρνείται να φορτώσετε τα αρχεία. Πολλά προγράμματα επεξεργασίας κειμένου και προγράμματα επεξεργασίας κειμένου σας επιτρέπουν να αποθηκεύετε αρχεία κειμένου Unicode, γνωστή ως κωδικοποιημένου κειμένου στο Microsoft Word, πολλά κωδικοποιήσεις διαφορετικές μεταφοράς, συμπεριλαμβανομένων των UTF-7. Έτσι εάν αποθηκεύσετε ένα έγγραφο του Word ως "κωδικοποιημένο κείμενο UTF-7", MSXML θα αρνηθεί να το φορτώσετε για τους ανωτέρω λόγους.

Βήματα για την αναπαραγωγή συμπεριφοράς

  1. Δημιουργήστε ένα απλό αρχείο XML στο Word 2000:

    <?xml version="1.0"?><MyTag><EmbeddedTag name1="value"/></MyTag>
  2. Αποθηκεύστε το αρχείο ως Κωδικοποιημένο κείμενο. Όταν το Word σας ζητήσει αν θέλετε να χάσετε μορφοποίηση, κάντε κλικ στο κουμπί " Ναι". Το Word θα ζητήσει για μια μορφή κωδικοποίησης που θα χρησιμοποιηθεί. Επιλέξτε UTF-7και, στη συνέχεια, αποθηκεύστε το έγγραφο ως όνομα αρχείου cap TestUTF7.xml.

  3. Όνομα αρχείου cap φορτίο TestUTF7.xml στον Internet Explorer 5. Θα λάβετε το ακόλουθο μήνυμα λάθους:

    Δεν είναι έγκυρο στο ανώτατο επίπεδο του εγγράφου. Γραμμή 1, θέση 1 + ADw-; xml έκδοση + AD0AIg - 1.0 + ACI-; + AD4-.

Αναφορές

Για την πιο πρόσφατη καθολική ανάπτυξη λογισμικού Microsoft http://www.unicode.org/ για το πιο πρόσφατο πρότυπο Unicode.Για περισσότερες πληροφορίες σχετικά με την ανάπτυξη λύσεων που βασίζονται στο Web για τον Microsoft Internet Explorer, επισκεφθείτε τις ακόλουθες τοποθεσίες της Microsoft στο Web:

http://msdn.microsoft.com/ie/ http://support.microsoft.com/iep(c) Microsoft Corporation 2000, επιφύλαξη παντός δικαιώματος. Συνεισφορές από τον Jay Ανδρέας ο Αντώνης, Microsoft Corporation.

Χρειάζεστε περισσότερη βοήθεια;

Αναπτύξτε τις δεξιότητές σας

Εξερευνήστε το περιεχόμενο της εκπαίδευσης >

Αποκτήστε πρώτοι τις νέες δυνατότητες

Συμμετοχή στο Microsoft Insider >

Σας βοήθησαν αυτές οι πληροφορίες;

Πόσο ικανοποιημένοι είστε με τη γλωσσική ποιότητα;
Τι επηρέασε την εμπειρία σας;

Σας ευχαριστούμε για τα σχόλιά σας!

×