Làm việc với lớp Workbook Model Layer

Làm việc với lớp Workbook Model Layer

Lý làm việc với lớp mô hình Workbook

Dưới API hướng tới người dùng, crate giữ một lớp mô hình dữ liệu thuần phản chiếu gói XLSX: các struct giá trị, mô hình quy tắc và bộ nhớ chia sẻ. Hầu hết các ứng dụng không bao giờ chạm tới các kiểu này trực tiếp, nhưng chúng xuất hiện khi bạn kiểm tra sâu các workbook đã tải hoặc đóng góp vào crate itself.


Các kiểu giá trị

ColorValue chứa các thành phần màu ARGB dưới dạng các trường a, r, g, b đơn giản, với equals và get_hash_code để so sánh. Định dạng số ở cấp mô hình nằm trong NumberFormatValue, hỗ trợ clone để sao chép định nghĩa định dạng giữa các bản ghi mô hình.


Mô hình quy tắc

Các quy tắc chất lượng dữ liệu có bản sao mô hình: ValidationModel hiển thị areas, validation_type, alert_style, operator của quy tắc, và các biểu thức formula1 / formula2 dưới dạng các trường; FormatConditionModel và ConditionalFormattingModel đóng vai trò tương tự cho các bản ghi định dạng có điều kiện. Chúng được tạo bằng default và được điền dữ liệu từng trường một.


Bộ nhớ chuỗi chia sẻ

Các tệp XLSX lưu trữ văn bản ô lặp lại trong bảng shared-strings. SharedStringRepository mô hình hoá nó như một interner:

  • intern thêm một chuỗi và trả về chỉ mục của nó (tái sử dụng các mục đã tồn tại),
  • try_get_value giải quyết một chỉ mục trở lại chuỗi của nó,
  • clear đặt lại kho lưu trữ.

Diagnostics

DiagnosticBag thu thập các vấn đề có cấu trúc qua add trong quá trình vận hành mô hình. Ở mức API cùng thông tin này được gửi tới bạn qua LoadDiagnostics khi tải sổ làm việc — xem Tổng quan tính năng.


Mẹo và Thực hành Tốt nhất

  • Ưu tiên API hướng tới người dùng (Workbook, Worksheet, các bộ sưu tập ô) — lớp mô hình không cần thiết cho công việc bảng tính thường ngày.
  • Xử lý các struct mô hình như các bản ghi dữ liệu: khởi tạo bằng default, sau đó đặt các trường một cách rõ ràng.
  • Khi điều tra các tệp bị lỗi, kết hợp các cờ sửa chữa LoadOptions với các chẩn đoán mà bộ tải báo cáo.

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

Vấn đềNguyên nhânKhắc phục
Chuỗi chia sẻ trùng lặpBỏ qua internerChuyển hướng văn bản qua SharedStringRepository.intern
Quy tắc xác thực bị bỏ quaCác trường mô hình chưa đầy đủĐặt validation_type, operator và formula1 trên ValidationModel

FAQ

Tôi có cần lớp mô hình để viết bảng tính không?

Không. Workbook API bao gồm việc tạo, chỉnh sửa và lưu sổ làm việc; lớp mô hình hỗ trợ nó.

Tại sao các struct mô hình lại sử dụng các hàm khởi tạo default?

Chúng là các bản ghi dữ liệu thuần túy phản ánh cấu trúc XLSX — default cung cấp một bản ghi rỗng mà bạn điền các trường từng cái một.


API Reference Tóm tắt

Lớp/Phương thứcMô tả
ColorValueBản ghi màu ARGB (a, r, g, b)
NumberFormatValue.cloneSao chép định nghĩa định dạng số
ValidationModelBản ghi quy tắc xác thực (các vùng, toán tử, công thức)
FormatConditionModel.defaultBản ghi quy tắc định dạng có điều kiện rỗng
SharedStringRepository.internNội bộ hoá một chuỗi, trả về chỉ mục của nó
SharedStringRepository.try_get_valueGiải quyết một chỉ mục đã interned
DiagnosticBag.addGhi lại chẩn đoán có cấu trúc

Xem thêm

 Tiếng Việt