Hướng dẫn khắc phục sự cố

Hướng dẫn khắc phục sự cố

Các vấn đề thường gặp

Phần này đề cập đến các vấn đề thường gặp khi sử dụng Aspose.Cells FOSS trong Python, đặc biệt với các lớp từ bề mặt API như Cell, AutoFilter, CSVHandlerCFBReader.

Nhập CSV thất bại với lỗi mã hóa

Các triệu chứng bao gồm văn bản bị lỗi hoặc UnicodeDecodeError khi tải file CSV. Điều này xảy ra khi file CSV sử dụng mã hóa không phải UTF-8 (ví dụ: cp1252 hoặc Shift-JIS). Để khắc phục, hãy chuyển đổi file sang UTF-8 trước khi tải, hoặc truyền một phiên bản CSVLoadOptions vào CSVHandler.load_csv():

from aspose.cells_foss import Workbook, CSVHandler, CSVLoadOptions

opts = CSVLoadOptions()
wb = Workbook()
CSVHandler.load_csv(wb, "data.csv", opts)

AutoFilter Không được áp dụng sau khi tải XLSX

Các triệu chứng bao gồm thiếu điều khiển bộ lọc hoặc dữ liệu chưa được lọc sau khi tải file .xlsx. Điều này xảy ra khi AutoFilterXMLLoader.load_auto_filter() thất bại im lặng do XML không đúng định dạng trong file nguồn. Xác minh rằng xl/autofilters/autofilter*.xml trong file XLSX có định dạng đúng. Nếu file được tạo bên ngoài, hãy đảm bảo nó tuân thủ ECMA-376. Sử dụng AutoFilter.range, filter_columnssort_state để kiểm tra trạng thái đã tải sau khi tải.

Không thể đọc các file XLSX đã mã hóa

Các triệu chứng bao gồm NotImplementedError: Standard encryption is not yet supported khi cố gắng mở file .xlsx đã mã hóa. Aspose.Cells FOSS chỉ hỗ trợ mã hóa Agile (ECMA-376 Phần 2, Mục 4) qua AgileEncryptionParameters. Các file được mã hóa bằng XOR cũ hoặc mã hóa ECMA-376 tiêu chuẩn không được hỗ trợ. Chỉ sử dụng CFBReader.read_encryption_info() nếu file sử dụng mã hóa Agile; nếu không, hãy giải mã bên ngoài trước khi tải.

Giá trị Cell không được phân tích đúng từ XML

Các triệu chứng bao gồm giá trị ngày không chính xác, chuỗi số bị hiểu nhầm là số, hoặc các giá trị lỗi (ví dụ: #N/A) không được nhận dạng. Điều này xảy ra khi CellValueHandler.parse_value_from_xml() được sử dụng với cell_type không đúng hoặc thiếu ngữ cảnh shared_strings. Đảm bảo cell_type khớp với thuộc tính ECMA-376 t (ví dụ: 's' cho chuỗi chia sẻ, 'n' cho số), và cung cấp danh sách shared_strings đã điền đầy đủ cho các kiểu chuỗi. Sử dụng CellValueHandler.get_cell_type() để xác nhận các kiểu được suy luận trước khi phân tích.

Thông báo lỗi

Aspose.Cells FOSS tạo ra các lỗi cụ thể trong quá trình thực hiện I/O file, mã hóa và các thao tác phân tích. Phần này ghi lại các thông báo lỗi thường gặp từ các lớp như CFBReader, CFBWriterAutoFilterXMLLoader, cùng với nguyên nhân và cách khắc phục.

LỗiNguyên nhânKhắc phục
NotImplementedError: Standard encryption is not yet supportedCố gắng đọc hoặc ghi XLSX đã mã hóa sử dụng mã hóa không phải Agile (ví dụ: XOR, RC4).Sử dụng AgileEncryptionParameters và đảm bảo file sử dụng mã hóa Agile (ECMA-376 Phần 2, Mục 4).
NotImplementedError: Only Agile encryption is currently supportedSử dụng CFBWriter hoặc CFBReader với các tham số mã hóa khác Agile.Cấu hình mã hóa qua AgileEncryptionParameters trước khi gọi write() hoặc read_encrypted_package().
NotImplementedError: Unsupported chart type for creationTạo biểu đồ với kiểu không có trong ChartType.LINE, BAR, PIE, AREA hoặc STOCK.Giới hạn việc tạo biểu đồ ở các kiểu được hỗ trợ: LINE, BAR, PIE, AREA, STOCK.
NotImplementedError: Only line, bar, pie, area and stock charts are currently supportedLưu các kiểu biểu đồ không được hỗ trợ (ví dụ: WATERFALL, BOX_WHISKER) vào XML.Chỉ sử dụng các giá trị ChartType được hỗ trợ khi lưu biểu đồ qua xml_chart_saver.
ValueError: Invalid CSV contentDữ liệu CSV không đúng định dạng được truyền vào CSVHandler.load_csv_from_string() hoặc load_csv().Xác thực cú pháp CSV trước khi tải.
ValueError: Cell value type mismatchTruyền kiểu không tương thích vào CellValueHandler.format_value_for_xml() hoặc parse_value_from_xml().Sử dụng CellValueHandler.get_cell_type() để xác định kiểu ô đúng trước khi định dạng hoặc phân tích.

Nhận trợ giúp

Đối với Aspose.Cells FOSS, hãy báo cáo sự cố hoặc yêu cầu tính năng qua GitHub Issues. Xem lại tài liệu cho các lớp như AutoFilter, Cell, CSVHandlerAgileEncryptionParameters. Tham gia cộng đồng trên GitHub Discussions cho các câu hỏi chung về việc sử dụng thư viện trong các quy trình làm việc Python.

Xem thêm

Để có hướng dẫn liên quan về xử lý các vấn đề thường gặp trong Aspose.Cells FOSS, hãy xem lại tài liệu cho các lớp cốt lõi như Cell, AutoFilter, CSVHandlerAgileEncryptionParameters.

 Tiếng Việt