Ръководства за отстраняване на проблеми
Чести проблеми
Този раздел обхваща чести проблеми, срещани при използване на 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.