Cómo cargar una hoja de cálculo en Rust
Aspose.Cells FOSS para Rust carga libros de trabajo Excel XLSX directamente desde el formato de paquete — no se requiere Microsoft Office. Esta guía instala la crate aspose-cells-foss-rust vía Cargo, carga un libro de trabajo con Workbook::load_xlsx, y maneja archivos imperfectos con banderas de reparación LoadOptions y LoadDiagnostics.
Guía paso a paso
Paso 1: Instalar el paquete
Añade la crate a tu Cargo.toml como una dependencia git de Cargo:
# Cargo.toml
[dependencies]
aspose-cells-foss-rust = { git = "https://github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Rust" }Luego construye el proyecto:
cargo buildPaso 2: Importar clases requeridas
use aspose_cells_foss_rust::{LoadOptions, Workbook};
use std::error::Error;Paso 3: Crear un archivo de muestra para cargar
Si aún no tienes un libro de trabajo en el disco, escribe uno primero:
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")?;Paso 4: Cargar el libro de trabajo
Workbook::load_xlsx abre un archivo XLSX bien formado:
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());Paso 5: Cargar de forma defensiva con opciones de reparación
Para archivos de terceros, habilita las banderas de reparación e inspecciona los diagnósticos que el cargador recopiló:
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()
);Problemas comunes y soluciones
La llamada load devuelve un error para un archivo que se abre en Excel. Enable try_repair_package and try_repair_xml in LoadOptions y cargar mediante Workbook::load_xlsx_with_options — Excel tolera algunas irregularidades del paquete que la carga estricta rechaza.
worksheet("Sheet1") falla después de la carga. La hoja puede tener un nombre diferente. Enumere mediante get_worksheets o recupérela por índice a través de la colección de hojas de cálculo en su lugar.
Los valores se leen de vuelta como cadenas vacías. Usar display_string_value en la celda para su texto de visualización y comprobar value_type para ver lo que realmente está almacenado.
Las fórmulas muestran resultados obsoletos. El cargador conserva los valores en caché almacenados en el archivo; la recalculación es responsabilidad del consumidor. Al escribir, siempre pasa un valor en caché correcto a put_formula_with_cached_value.
Preguntas frecuentes
¿Qué formatos se pueden cargar?
Solo XLSX en la versión actual. El enum LoadFormat cubre Auto y Xlsx.
¿Necesito Microsoft Office instalado?
No. El crate analiza el paquete XLSX directamente; no se involucra Office, COM, ni tiempo de ejecución externo.
¿Cómo sé si el cargador reparó algo?
Lea get_load_diagnostics en el libro de trabajo cargado — LoadDiagnostics enumera los problemas encontrados durante la carga.