چگونه یک صفحه‌گسترده را در Rust بارگذاری کنیم

چگونه یک صفحه‌گسترده را در Rust بارگذاری کنیم

Aspose.Cells FOSS برای Rust، کتاب‌های کار Excel XLSX را مستقیماً از فرمت بسته بارگذاری می‌کند — نیازی به Microsoft Office نیست. این راهنما crate aspose-cells-foss-rust را از طریق Cargo نصب می‌کند، یک کتاب کار را با Workbook::load_xlsx بارگذاری می‌کند، و فایل‌های ناقص را با پرچم‌های تعمیر LoadOptions و LoadDiagnostics مدیریت می‌کند.

راهنمای گام به گام

گام 1: نصب بسته

crate را به Cargo.toml خود به‌عنوان یک وابستگی git در Cargo اضافه کنید:

# Cargo.toml
[dependencies]
aspose-cells-foss-rust = { git = "https://github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Rust" }

سپس پروژه را بسازید:

cargo build

مرحله ۲: وارد کردن کلاس‌های مورد نیاز

use aspose_cells_foss_rust::{LoadOptions, Workbook};
use std::error::Error;

مرحله ۳: ایجاد یک فایل نمونه برای بارگذاری

اگر هنوز یک کتاب‌کار روی دیسک ندارید، ابتدا یک مورد بنویسید:

let mut workbook = Workbook::new();
{
    let mut worksheets = workbook.get_worksheets_mut();
    let sheet = worksheets.get(0)?;
    let mut cells = sheet.get_cells_mut();

    cells.get("A1")?.put_value_string("Item")?;
    cells.get("B1")?.put_value_string("Quantity")?;
    cells.get("A2")?.put_value_string("Apples")?;
    cells.get("B2")?.put_value_i32(12)?;
}
workbook.save("inventory.xlsx")?;

مرحله ۴: بارگذاری کتاب‌کار

Workbook::load_xlsx یک فایل XLSX به‌درست باز می‌کند:

let loaded = Workbook::load_xlsx("inventory.xlsx")?;
let sheet = loaded.worksheet("Sheet1")?;
let cells = sheet.get_cells();
println!("A2 = {}", cells.get("A2")?.display_string_value());

مرحله ۵: بارگذاری به‌صورت محافظتی با گزینه‌های تعمیر

برای فایل‌های تهیه‌شده از طرف‌های سوم، پرچم‌های تعمیر را فعال کنید و تشخیص‌های جمع‌آوری‌شده توسط لودر را بررسی کنید:

let options = LoadOptions {
    try_repair_package: true,
    try_repair_xml: true,
    ..LoadOptions::default()
};

let loaded = Workbook::load_xlsx_with_options("inventory.xlsx", &options)?;
println!(
    "Loaded workbook with {} worksheet(s) and {} diagnostic issue(s).",
    loaded.get_worksheets().count(),
    loaded.get_load_diagnostics().issues().len()
);

مسائل رایج و راه‌حل‌ها

فراخوانی load خطایی برمی‌گرداند برای فایلی که در Excel باز می‌شود. Enable try_repair_package and try_repair_xml in LoadOptions و بارگذاری از طریق Workbook::load_xlsx_with_options — Excel برخی ناهماهنگی‌های بسته را می‌پذیرد در حالی که بارگذاری سخت‌گیرانه آن‌ها را رد می‌کند.

worksheet("Sheet1") پس از بارگذاری شکست می‌خورد. ممکن است شیت نام متفاوتی داشته باشد. از طریق این لیست کنید get_worksheets یا به‌جای آن با اندیس از طریق مجموعه worksheet بازیابی کنید.

مقادیر به‌عنوان رشته‌های خالی خوانده می‌شوند. استفاده کنید display_string_value در سلول برای متن نمایش آن و بررسی کنید value_type تا ببینید واقعاً چه چیزی ذخیره شده است.

فرمول‌ها نتایج منقضی شده را نشان می‌دهند. بارگذار مقادیر کش‌شده ذخیره‌شده در فایل را حفظ می‌کند؛ بازمحاسبه‌گری مسئولیت مصرف‌کننده است. هنگام نوشتن، همیشه یک مقدار کش‌شده صحیح را به put_formula_with_cached_value.

سوالات متداول

کدام قالب‌ها می‌توانند بارگذاری شوند؟

فقط XLSX در نسخه‌ی فعلی. enum LoadFormat شامل Auto و Xlsx است.

آیا به نصب Microsoft Office نیاز دارم؟

نه. این crate مستقیماً بسته XLSX را تجزیه می‌کند؛ هیچ Office، COM یا زمان‌اجرای خارجی درگیر نیست.

چگونه می‌توانم بفهمم که بارگذار چیزی را اصلاح کرده است؟

در کتاب‌کار بارگذاری شده get_load_diagnostics را بخوانید — LoadDiagnostics مشکلاتی را که در حین بارگذاری رخ داده‌اند فهرست می‌کند.

همچنین ببینید:

 فارسی