Εργασία με την επεξεργασία XML

Εργασία με την επεξεργασία XML

Εργασία με την επεξεργασία XML

Aspose.Cells FOSS for C++ uses a lightweight internal XML layer to read and write the Open XML parts that make up an XLSX file. The XmlDocument, XmlElement,και XmlAttribute Οι τάξεις αποτελούν τον πυρήνα αυτού του στρώματος.


Κατεβάστε ένα έγγραφο XML

Χρησιμοποιήστε XmlDocument::Load Για να διαχωρίσετε μια γραμμή XML ή ένα αρχείο στο δέντρο εγγράφου μνήμης:

#include "aspose/cells_foss/XmlDocument.h"

using namespace Aspose::Cells_FOSS;

// Load from string content
XmlDocument doc;
doc.Load("<root><item key=\"a\">value</item></root>");

Κατασκευή και αποθήκευση XML

Χρησιμοποιήστε XmlDocument::Build να δημιουργήσετε ένα XML έγγραφο προγραμματικά, και XmlDocument::SaveToUtf8 Για να το στείλετε πίσω σε μια γραμμή UTF-8:

XmlDocument doc;
// Build the document structure
auto xml = doc.SaveToUtf8();

Ταξιδεύοντας στοιχεία

XmlElement παρέχει ελαφρύ χέρι-based πρόσβαση σε τιμές στοιχείων, παιδιά και χαρακτηριστικά. επιστροφή προεπιλεγμένων κατασκευασμένων στοιχειών IsNull() == true, η οποία μπορεί να χρησιμοποιηθεί ως ασφαλές μηδενικό έλεγχο:

XmlElement root = doc.GetRootElement();
if (!root.IsNull()) {
    // Traverse children via GetAttributes
    auto attrs = root.GetAttributes();
}

Εργασία με τα χαρακτηριστικά

XmlAttribute παρέχει πρόσβαση στην προσδιορισμός των ζευγών ονόματος και αξίας σε ένα στοιχείο. XmlAttribute::MakeAttribute(name, value) Δημιουργία νέων χαρακτηριστικών:

XmlAttribute attr = XmlAttribute::MakeAttribute("key", "value");
bool isNull = attr.IsNull();

Εσωτερική Χάρτη XML

Η βιβλιοθήκη χρησιμοποιεί αφιερωμένες τάξεις χαρτογράφου για να μετατρέψει αντικείμενα μοντέλου σε μνήμη διατύπωσης σε και από τις αντιπροσωπείες XML τους. Αυτά είναι εσωτερικά στο στρώμα σειριώσεως:

Κλάση ΧάρτηςΥπεύθυνη
WorkbookXmlMapperΔιαβάζει και γράφει το τμήμα της σχέσης του βιβλίου εργασίας
WorksheetXmlMapperΔιαβάστε και γράψτε μεμονωμένα τμήματα XML φύλλου εργασίας
StylesheetXmlMapperΔιαβάζει και γράφει το κομμάτι των στυλ
SharedStringTableXmlMapperΔιαβάστε και γράψτε το κοινό πίνακα γραμμών

Κάθε χάρτης εκθέτει Read και Write Οι εν λόγω μέθοδοι ονομάζονται εσωτερικά από XlsxWorkbookSerializer Δεν προορίζονται για άμεση χρήση στον κώδικα εφαρμογής.


Λάθος χειρισμού

XML σφάλματα ρίχνει XmlParsingException.Πάρτε αυτή την εξαίρεση όταν φορτώνετε μη αξιόπιστο ή κακότυπο XML:

try {
    doc.Load(xmlContent);
} catch (const XmlParsingException& ex) {
    // Handle parse error
}

Συμβουλές και βέλτιστες πρακτικές

  • Ελέγξτε XmlElement::IsNull() Πριν από την πρόσβαση στα στοιχεία δεδομένων - τα στοιχεία σε λείπουν δρόμους επιστρέφουν ένα μηδενικό χειριστήριο.
  • Χρησιμοποιήστε XmlDocument::SaveToUtf8() για να αποκτήσετε μια σειρά γραμμών για την αποσύνδεση ή τη σύνδεσή σας μεσαία κατάσταση XML.
  • Δεν πρέπει να ανακαλύψετε τις κλάσεις (WorkbookXmlMapper, WorksheetXmlMapper, κλπ.) απευθείας στον κωδικό εφαρμογής — χρήση Workbook::Save και Workbook(filePath) Αντί να.
  • XmlParsingException ρίχνει σε κακότυπο XML. πάντα βυθίσει εξωτερικά φορτία XML σε ένα δοκιμαστικό / κλειστό μπλοκ.

κοινά ζητήματα

ΘέμαΑιτίαΦΙΛΕΞΗ
IsNull() Επιστρέφει ΑληθινήΤο στοιχείο δεν βρέθηκε στο αναμενόμενο μονοπάτιΕλέγξτε τη δομή XML πριν από την κρουαζιέρα
XmlParsingException ΣΤΟ ΛΟΙΓΜειωμένο ή μη-UTF-8 XMLΕγκρίστε την εισαγωγή XML πριν περάσετε στο Load
Η παραγωγή του χάρτη διαφέρει από την εισαγωγήΜοντέλο μετάλλαξης πριν από την αποθήκευσηΒεβαιωθείτε ότι όλες οι αλλαγές του μοντέλου γίνονται πριν από την κλήση Save

Συνοπτική αναφορά API

Τάξη / ΜέθοδοςΠεριγραφή
XmlDocument::Load(content)Εισαγωγή XML string
XmlDocument::Build()Δημιουργία ενός εγγράφου με προγραμματισμό
XmlDocument::SaveToUtf8()Σειρά το έγγραφο σε μια στήλη UTF-8
XmlElement::IsNull()Ελέγξτε αν το στοιχείο χειρισμού είναι έγκυρο
XmlElement::GetValue()Αποκτήστε το περιεχόμενο του κειμένου της συσκευής
XmlElement::GetAttributes()Κάντε την συλλογή των χαρακτηριστικών
XmlAttribute::IsNull()Ελέγξτε αν η χειραγώγηση του χαρακτηρισμού είναι έγκυρη
XmlAttribute::MakeAttribute(name, value)Δημιουργία νέου χειριστή χαρακτηριστικών
XmlParsingExceptionΣχετικά με την κακοποιημένη εισαγωγή XML
WorksheetXmlMapperΕσωτερικό φύλλο εργασίας XML ανάγνωση/εγγραφή
WorkbookXmlMapperΕσωτερικό βιβλίο εργασίας XML ανάγνωση/εγγραφή

Δείτε επίσης

 Ελληνικά