Bekerja dengan XLSX Packaging
Bekerja dengan XLSX Packaging
Aspose.Cells FOSS for C++ reads and writes the .xlsx Buka format XML melalui lapisan serialisasi khusus. XlsxWorkbookSerializer kelas mengatur pemuatan dan menyimpan semua bagian buku kerja termasuk lembar kerja, gaya, nama yang didefinisikan, properti dokumen, dan filter otomatis.
Mengunggah dan Menyimpan File XLSX
Gunakan Workbook kelas untuk semua operasi beban dan menyimpan. Internal, XlsxWorkbookSerializer menangani paket Open XML:
#include "aspose/cells_foss/Workbook.h"
using namespace Aspose::Cells_FOSS;
int main() {
// Load existing XLSX
Workbook workbook("input.xlsx");
// Modify content...
// Save back to XLSX
workbook.Save("output.xlsx");
return 0;
}Properti dokumen
File XLSX membawa properti dokumen inti dan diperluas (judul, penulis, tanggal penciptaan). Ini dikelola oleh XlsxDocumentProperties, yang membangun dan memuat docProps/core.xml dan (b) docProps/app.xml Bagian-bagian:
| Part | Diurus oleh: | Contains |
|---|---|---|
docProps/core.xml | XlsxDocumentProperties::BuildCorePropertiesDocument | Judul, penulis, dibuat, dimodifikasi |
docProps/app.xml | XlsxDocumentProperties::BuildExtendedPropertiesDocument | Nama aplikasi, versi |
Metadata dan Pengaturan Buku Kerja
Metadata tingkat buku kerja pengaturan perhitungan, tampilan buku dan perlindungan buku pekerjaan ?? dikelola oleh XlsxWorkbookProperties:
BuildWorkbookPropertiesElementmenulis pengaturan perhitungan dan iterasi buku kerjaBuildWorkbookProtectionElementmenulis perlindungan kata sandi tingkat buku kerjaBuildBookViewsElementmenulis posisi jendela dan pengaturan lembar aktif
Gaya dan Format Angka
Bagian gaya (xl/styles.xml) dikelola oleh: XlsxWorkbookStyles.Dia memetakan. Style objek dari model in-memory ke font, isian, border dan format nomor yang diserialisasikan:
BuildStylesheetSerialkan semua gaya ke XMLLoadStylesheetmembaca gaya dari file XLSX yang adaStylesEqualmemeriksa apakah dua objek gaya akan menghasilkan XML yang identik
Pengemasan Filter Otomatis
Status otomatis-filter per lembar kerja diserialisasi oleh: XlsxWorkbookAutoFilter:
BuildAutoFilterElementmenuliskan<autoFilter>Elemen XMLLoadAutoFiltermembaca konfigurasi otomatis filter dari bagian lembar kerja
Nama yang Ditentukan
Jangkauan dan rumus yang diberi nama dikemas dalam bagian buku kerja dan dimuat oleh XlsxWorkbookDefinedNames:
BuildDefinedNamesmenulis semuaDefinedNameentri ke buku kerja XMLLoadWorkbookDefinedNamesmembaca nama yang ditentukan saat memuat file
Tips dan Praktik Terbaik
- Penggunaan
Workbook::Save(fileName)sebagai titik keluar tunggal tidak memanggil kelas serialisator secara langsung kecuali memperluas perpustakaan. - Pengelolaan
.xlsxformat adalah satu-satunya format yang sepenuhnya didukung; menyimpan ke format lain tidak tersedia dalam v0.1. - Jalur file yang diteruskan ke
Workbook(filePath)atau:Save(filePath)harus menggunakan pemisah jalur platform dan memiliki kualifikasi penuh saat berjalan di lingkungan dimana direktori kerja dapat bervariasi. - Perlindungan buku kerja yang diterapkan melalui
XlsxWorkbookProperties::BuildWorkbookProtectionElementtidak bergantung pada perlindungan tingkat lembar kerja yang ditetapkan melaluiWorksheet::Protect.
Masalah Umum
| Issue | Cause | Perbaiki |
|---|---|---|
| File gagal dimuat | XLSX yang tidak valid atau terenkripsi | Pastikan file adalah XLSX biasa (tidak dilindungi kata sandi) |
| Gaya hilang setelah menyimpan | Gaya yang tidak diterapkan sebelum Simpan | Call Cell::SetStyle(style) sebelum Workbook::Save |
| Nama-nama yang didefinisikan hilang setelah perjalanan pulang | Lingkup yang ditetapkan pada lembar salah | Penggunaan DefinedName::SetFormula dengan alamat jangkauan penuh |
Ringkasan Referensi API
| Kelas/Metode | Description |
|---|---|
Workbook(filePath) | Mengunggah file XLSX |
Workbook::Save(fileName) | Simpan ke XLSX |
XlsxWorkbookSerializer::Save | Internal: merilis model ke Open XML |
XlsxWorkbookSerializer::Load | Internal: deserializes Open XML ke model |
XlsxDocumentProperties | Kemasan properti dokumen inti dan diperluas |
XlsxWorkbookProperties | Metadata buku kerja dan serialisasi pengaturan |
XlsxWorkbookStyles | Kemasan lembaran gaya |
XlsxWorkbookAutoFilter | Pengemasan XML otomatis-filter |
XlsxWorkbookDefinedNames | Nama yang didefinisikan XML packaging |