Οδηγοί Επίλυσης Προβλημάτων
Κοινά προβλήματα
Αυτή η ενότητα καλύπτει συχνά προβλήματα που προκύπτουν κατά τη χρήση του Aspose.Cells FOSS στο Python, συγκεκριμένα με κλάσεις από την επιφάνεια του API όπως Cell, AutoFilter, CSVHandler, και CFBReader.
Η εισαγωγή CSV αποτυγχάνει με σφάλματα κωδικοποίησης
Τα συμπτώματα περιλαμβάνουν παραμορφωμένο κείμενο ή UnicodeDecodeError κατά τη φόρτωση αρχείων CSV. Αυτό συμβαίνει όταν το αρχείο CSV χρησιμοποιεί κωδικοποίηση μη-UTF-8 (π.χ., cp1252 ή Shift-JIS). Για να το διορθώσετε, μετατρέψτε το αρχείο σε UTF-8 πριν τη φόρτωση, ή περάστε ένα CSVLoadOptions αντίγραφο σε CSVHandler.load_csv():
from aspose.cells_foss import Workbook, CSVHandler, CSVLoadOptions
opts = CSVLoadOptions()
wb = Workbook()
CSVHandler.load_csv(wb, "data.csv", opts)AutoFilter Δεν Εφαρμόζεται Μετά τη Φόρτωση XLSX
Τα συμπτώματα περιλαμβάνουν ελλιπείς ελέγχους φίλτρου ή μη φιλτραρισμένα δεδομένα μετά τη φόρτωση ενός .xlsx αρχείου. Αυτό συμβαίνει όταν AutoFilterXMLLoader.load_auto_filter() αποτυγχάνει σιωπηρά λόγω κακοδιατυπωμένου XML στο αρχείο προέλευσης. Επαληθεύστε το XLSX xl/autofilters/autofilter*.xml είναι καλά δομημένο. Εάν το αρχείο δημιουργήθηκε εξωτερικά, βεβαιωθείτε ότι συμμορφώνεται με το ECMA-376. Χρησιμοποιήστε AutoFilter.range, filter_columns, και sort_state για να ελέγξετε την κατάσταση φόρτωσης μετά τη φόρτωση.
Τα κρυπτογραφημένα αρχεία XLSX δεν μπορούν να διαβαστούν
Τα συμπτώματα περιλαμβάνουν NotImplementedError: Standard encryption is not yet supported κατά την προσπάθεια ανοίγματος ενός κρυπτογραφημένου .xlsx αρχείου. Το Aspose.Cells FOSS υποστηρίζει μόνο κρυπτογράφηση Agile (ECMA-376 Part 2, Section 4) μέσω AgileEncryptionParameters. Τα αρχεία που κρυπτογραφήθηκαν με παλαιά XOR ή τυπική κρυπτογράφηση ECMA-376 δεν υποστηρίζονται. Χρησιμοποιήστε CFBReader.read_encryption_info() μόνο εάν το αρχείο χρησιμοποιεί κρυπτογράφηση Agile· διαφορετικά, αποκρυπτογραφήστε εξωτερικά πριν τη φόρτωση.
Cell Τιμές που δεν αναλύονται σωστά από το XML
Τα συμπτώματα περιλαμβάνουν λανθασμένες τιμές ημερομηνίας, αριθμητικές συμβολοσειρές που ερμηνεύονται λανθασμένα ως αριθμοί ή τιμές σφάλματος (π.χ., #N/A) δεν αναγνωρίζονται. Αυτό συμβαίνει όταν CellValueHandler.parse_value_from_xml() χρησιμοποιείται με λανθασμένο cell_type ή λείπει shared_strings πλαίσιο. Βεβαιωθείτε ότι cell_type ταιριάζει με το ECMA-376 t χαρακτηριστικό (π.χ., 's' για κοινόχρηστη συμβολοσειρά, 'n' για αριθμό), και παρέχετε μια συμπληρωμένη shared_strings λίστα για τύπους συμβολοσειρών. Χρησιμοποιήστε CellValueHandler.get_cell_type() για να επικυρώσετε τους εκτιμώμενους τύπους πριν από την ανάλυση.
Μηνύματα σφάλματος
Aspose.Cells FOSS raises specific errors during file I/O, encryption, and parsing operations. This section documents common error messages from classes like CFBReader, CFBWriter, και AutoFilterXMLLoader, μαζί με τις αιτίες και τις διορθώσεις τους.
| Σφάλμα | Αιτία | Διόρθωση |
|---|---|---|
NotImplementedError: Standard encryption is not yet supported | Προσπάθεια ανάγνωσης ή εγγραφής κρυπτογραφημένου XLSX χρησιμοποιώντας μη Agile κρυπτογράφηση (π.χ., XOR, RC4). | Χρησιμοποιήστε AgileEncryptionParameters και βεβαιωθείτε ότι το αρχείο χρησιμοποιεί κρυπτογράφηση Agile (ECMA-376 Part 2, Section 4). |
NotImplementedError: Only Agile encryption is currently supported | Χρησιμοποιώντας CFBWriter ή CFBReader με παραμέτρους κρυπτογράφησης διαφορετικές από το Agile. | Διαμορφώστε την κρυπτογράφηση μέσω AgileEncryptionParameters πριν από την κλήση write() ή read_encrypted_package(). |
NotImplementedError: Unsupported chart type for creation | Δημιουργία γραφήματος τύπου που δεν βρίσκεται σε ChartType.LINE, BAR, PIE, AREA ή STOCK. | Περιορίστε τη δημιουργία γραφημάτων σε υποστηριζόμενους τύπους: LINE, BAR, PIE, AREA, STOCK. |
NotImplementedError: Only line, bar, pie, area and stock charts are currently supported | Αποθήκευση μη υποστηριζόμενων τύπων γραφημάτων (π.χ., WATERFALL, BOX_WHISKER) σε XML. | Χρησιμοποιήστε μόνο υποστηριζόμενα ChartType τιμές κατά την αποθήκευση γραφημάτων μέσω xml_chart_saver. |
ValueError: Invalid CSV content | Κακοδιατυπωμένα δεδομένα CSV που μεταβιβάστηκαν στο CSVHandler.load_csv_from_string() ή load_csv(). | Επικυρώστε τη σύνταξη CSV πριν τη φόρτωση. |
ValueError: Cell value type mismatch | Πέρασμα μη συμβατού τύπου στο CellValueHandler.format_value_for_xml() ή parse_value_from_xml(). | Χρησιμοποιήστε CellValueHandler.get_cell_type() για να προσδιορίσετε τον σωστό τύπο κελιού πριν από τη μορφοποίηση ή την ανάλυση. |
Λήψη βοήθειας
Για το Aspose.Cells FOSS, αναφέρετε προβλήματα ή ζητήστε λειτουργίες μέσω του GitHub Issues. Εξετάστε την τεκμηρίωση για κλάσεις όπως AutoFilter, Cell, CSVHandler, και AgileEncryptionParameters. Συμμετέχετε στην κοινότητα στο GitHub Discussions για γενικές ερωτήσεις σχετικά με τη χρήση της βιβλιοθήκης σε Python ροές εργασίας.
- GitHub Issues: https://github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Python/issues
- Συζητήσεις GitHub: https://github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Python/discussions
- Αναφορά API: https://reference.aspose.org/cells/python/
Δείτε επίσης
Για σχετικές οδηγίες σχετικά με την αντιμετώπιση κοινών προβλημάτων στο Aspose.Cells FOSS, εξετάστε την τεκμηρίωση για βασικές κλάσεις όπως Cell, AutoFilter, CSVHandler, και AgileEncryptionParameters.