Hogyan töltsünk be egy táblázatot Rustban

Hogyan töltsünk be egy táblázatot Rustban

Aspose.Cells FOSS for Rust közvetlenül a csomagformátumból tölti be az Excel XLSX munkafüzeteket — Microsoft Office nélkül. Ez a útmutató a aspose-cells-foss-rust crate-et telepíti a Cargo segítségével, egy munkafüzetet betölt a Workbook::load_xlsx használatával, és a hibás fájlokat a LoadOptions javítási zászlókkal és a LoadDiagnostics kezeli.

Lépésről lépésre útmutató

1. lépés: A csomag telepítése

Add hozzá a crate-et a Cargo.toml Cargo git függőségként:

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

Ezután építsd fel a projektet:

cargo build

2.lépés: A szükséges osztályok importálása

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

3.lépés: Minta fájl létrehozása betöltéshez

Ha még nincs munkafüzet a lemezen, először írj egyet:

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")?;

4.lépés: A munkafüzet betöltése

Workbook::load_xlsx egy jól formázott XLSX fájlt nyit meg:

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());

5.lépés: Defenzív betöltés javítási opciókkal

Független felek által biztosított fájlok esetén engedélyezd a javítási jelzőket, és vizsgáld meg a betöltő által gyűjtött diagnosztikát:

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()
);

Gyakori problémák és megoldások

A betöltési hívás hibát ad egy olyan fájl esetén, amely megnyílik Excelben. Enable try_repair_package and try_repair_xml in LoadOptions és betöltés a Workbook::load_xlsx_with_options — Az Excel tolerál néhány csomag-rendetlenséget, amelyeket a szigorú betöltés elutasít.

worksheet("Sheet1") sikertelen a betöltés után. A munkalapnak más neve lehet. Sorolja fel a get_worksheets vagy helyette index szerint kérje le a munkalapgyűjteményből.

Az értékek üres karakterláncként olvasódnak vissza. Használja display_string_value a cellán a megjelenő szöveghez, és ellenőrizze value_type hogy lássa, mi van valójában tárolva.

A képletek elavult eredményeket mutatnak. A betöltő megőrzi a fájlban tárolt gyorsítótárazott értékeket; az újraszámítás a felhasználó feladata. Íráskor mindig adjon át egy helyes gyorsítótárazott értéket a put_formula_with_cached_value.

Gyakran feltett kérdések

Mely formátumok tölthetők be?

Csak XLSX a jelenlegi kiadásban. A LoadFormat felsoroló tartalmazza a Auto és a Xlsx elemeket.

Szükségem van a Microsoft Office telepítésére?

Nem. A crate közvetlenül a XLSX csomagot elemzi; sem Office, sem COM, sem külső futtatókörnyezet nem vesz részt.

Hogyan tudhatom, hogy a betöltő javított-e valamit?

Olvassa el a get_load_diagnostics a betöltött munkafüzeten — a LoadDiagnostics felsorolja a betöltés során felmerült problémákat.

Lásd még:

 Magyar