Bekerja dengan Lapisan Model Workbook

Bekerja dengan Lapisan Model Workbook

Bekerja dengan Lapisan Model Workbook

Di bawah API yang berhadapan dengan pengguna, crate menyimpan lapisan model data polos yang mencerminkan paket XLSX: struktur nilai, model aturan, dan penyimpanan bersama. Sebagian besar aplikasi tidak pernah menyentuh tipe-tipe ini secara langsung, tetapi mereka muncul ketika Anda memeriksa workbook yang dimuat secara mendalam atau berkontribusi pada crate itu sendiri.


Tipe Nilai

ColorValue membawa komponen warna ARGB sebagai bidang a, r, g, b yang polos, dengan equals dan get_hash_code untuk perbandingan. Pemformatan angka pada tingkat model berada di NumberFormatValue, yang mendukung clone untuk menyalin definisi format antara catatan model.


Model Aturan

Aturan kualitas data memiliki kembar model: ValidationModel menampilkan areas, validation_type, alert_style, operator aturan, serta ekspresi formula1 / formula2 sebagai bidang; FormatConditionModel dan ConditionalFormattingModel memainkan peran yang sama untuk catatan pemformatan bersyarat. Ini dibangun dengan default dan diisi bidang demi bidang.


Penyimpanan String Bersama

File XLSX menyimpan teks sel yang berulang dalam tabel shared-strings. SharedStringRepository memodelkannya sebagai interner:

  • intern menambahkan string dan mengembalikan indeksnya (menggunakan kembali entri yang ada),
  • try_get_value mengubah indeks kembali menjadi stringnya,
  • clear mengatur ulang repositori.

Diagnostics

DiagnosticBag mengumpulkan masalah terstruktur melalui add selama operasi model. Pada level API informasi yang sama sampai kepada Anda melalui LoadDiagnostics saat memuat buku kerja — lihat Ikhtisar Fitur.


Tips dan Praktik Terbaik

  • Lebih baik gunakan API yang berorientasi pengguna (Workbook, Worksheet, koleksi sel) — lapisan model tidak diperlukan untuk pekerjaan spreadsheet rutin.
  • Perlakukan struct model sebagai catatan data: buat dengan default, kemudian atur bidang secara eksplisit.
  • Saat menyelidiki file yang rusak, gabungkan flag perbaikan LoadOptions dengan diagnostik yang dilaporkan pemuat.

Masalah Umum

MasalahPenyebabPerbaikan
String berbagi duplikatMelewati internerArahkan teks melalui SharedStringRepository.intern
Aturan validasi diabaikanBidang model tidak lengkapAtur validation_type, operator, dan formula1 pada ValidationModel

FAQ

Apakah saya perlu lapisan model untuk menulis spreadsheet?

Tidak. Workbook API mencakup pembuatan, penyuntingan, dan penyimpanan workbook; lapisan model mendasarinya.

Mengapa struct model menggunakan konstruktor default?

Mereka adalah catatan data sederhana yang mencerminkan struktur XLSX — default memberikan catatan kosong yang Anda isi bidang demi bidang.


API Reference Ringkasan

Kelas/MetodeDeskripsi
ColorValueCatatan warna ARGB (a, r, g, b)
NumberFormatValue.cloneSalin definisi format angka
ValidationModelCatatan aturan validasi (area, operator, formula)
FormatConditionModel.defaultCatatan aturan format bersyarat kosong
SharedStringRepository.internIntern sebuah string, mengembalikan indeksnya
SharedStringRepository.try_get_valueMenyelesaikan indeks yang diintern
DiagnosticBag.addCatat diagnostik terstruktur

Lihat Juga

 Bahasa Indonesia