Apertura de archivos con diferentes formatos

Abriendo Archivos con Diferentes Formatos

Aspose.Cells permite a los desarrolladores abrir archivos de hoja de cálculo con diferentes formatos como SpreadsheetML, valores separados por comas (CSV), valores delimitados por tabuladores (TSV), archivos ODS. Para abrir tales archivos, los desarrolladores pueden usar la misma metodología que usan para abrir archivos de diferentes versiones de Microsoft Excel.

Abriendo Archivos de SpreadsheetML

Los archivos de SpreadsheetML son representaciones XML de hojas de cálculo que incluyen toda la información sobre ellas, como formato, fórmulas, etc. Desde Microsoft Excel XP, se añadió una opción de exportación XML a Microsoft Excel que exporta tus hojas de cálculo a archivos de SpreadsheetML.

Aspose::Cells::Startup();
// The path to the documents directory.
U16String dataDir(u"");
// Opening XML Files
LoadOptions loadOptions(LoadFormat::Xml);
// Create a Workbook object and opening the file from its path
Workbook workbook(dataDir + u"Input.xml", loadOptions);
// Show following message on console
std::cout << "XML file opened successfully!" <<std::endl;
Aspose::Cells::Cleanup();

Abriendo Archivos HTML

Aspose.Cells te permite abrir archivos HTML en un objeto Workbook. El archivo HTML debe estar orientado a Microsoft Excel, es decir, MS-Excel debería poder abrirlo.

Aspose::Cells::Startup();
// The path to the documents directory.
U16String dataDir(u"");
// Opening HTML Files
LoadOptions loadOptions(LoadFormat::Html);
// Create a Workbook object and opening the file from its path
Workbook workbook(dataDir + u"Input.html", loadOptions);
// Show following message on console
std::cout << "HTML file opened successfully!" << std::endl;
Aspose::Cells::Cleanup();

Abriendo Archivos CSV

Los archivos de Valores Separados por Comas (CSV) contienen registros donde los valores están separados por comas. Los datos se almacenan en una tabla donde cada columna está separada por el carácter de coma y entre comillas por el carácter de comillas dobles. Si un valor de campo contiene un carácter de comillas dobles, se escapa con un par de caracteres de comillas dobles. También puedes usar Microsoft Excel para exportar datos de hoja de cálculo a CSV.

Aspose::Cells::Startup();
// The path to the documents directory.
U16String dataDir = u"";
// Instantiate LoadOptions specified by the LoadFormat.
LoadOptions loadOptions4(LoadFormat::Csv);
// Create a Workbook object and opening the file from its path
Workbook wbCSV(dataDir + u"Book_CSV.csv", loadOptions4);
std::cout << "CSV file opened successfully!" << std::endl;
Aspose::Cells::Cleanup();

Abriendo Archivos CSV y reemplazando caracteres inválidos

En Excel, cuando se abre un archivo CSV con caracteres especiales, los caracteres se reemplazan automáticamente. Lo mismo hace la API de Aspose.Cells, como se demuestra en el ejemplo de código que se muestra a continuación.

Aspose::Cells::Startup();
//Source directory
U16String sourceDir = u"";
U16String filename = sourceDir + u"InvalidCharacters.csv";
//Load CSV file
LoadFilter filter(LoadDataFilterOptions::CellData);
TxtLoadOptions csvOpt;
csvOpt.SetSeparator(';');
csvOpt.SetLoadFilter(&filter);
csvOpt.SetCheckExcelRestriction(false);
csvOpt.SetConvertNumericData(false);
csvOpt.SetConvertDateTimeData(false);
Workbook workbook(filename, csvOpt);
std::cout << "CSV file opened successfully!" << std::endl;
// Save for check
workbook.Save(u"Output.xlsx");
Aspose::Cells::Cleanup();

Puedes descargar el archivo fuente de muestra desde los siguientes enlaces para probar esta función.

InvalidCharacters.csv

Abriendo Archivos de Texto con Separador Personalizado

Los archivos de texto se usan para contener datos de hojas de cálculo sin formato. El archivo es un tipo de archivo de texto sin formato que puede tener algunos delimitadores personalizados.

Aspose::Cells::Startup();
// The path to the documents directory.
U16String dataDir = u"";
U16String filePath = dataDir + u"CustomSeparator.txt";
// Instantiate Text File's LoadOptions
TxtLoadOptions txtLoadOptions;
// Specify the separator
txtLoadOptions.SetSeparator(u',');
// Specify the encoding type
txtLoadOptions.SetEncoding(EncodingType::UTF8);
// Create a Workbook object and opening the file from its path
Workbook wb(filePath, txtLoadOptions);
// Save file
wb.Save(dataDir + u"output.xlsx");
Aspose::Cells::Cleanup();

Puedes descargar el archivo fuente de muestra desde los siguientes enlaces para probar esta función.

CustomSeparator.txt

Apertura de archivos con formato de pestañas

El archivo con formato de pestañas (Texto) contiene datos de hojas de cálculo pero sin ningún formato. Los datos están organizados en filas y columnas como en tablas y hojas de cálculo. Básicamente, un archivo con formato de pestañas es un tipo especial de archivo de texto plano con una pestaña entre cada columna.

Aspose::Cells::Startup();
// The path to the documents directory.
U16String dataDir = u"";
// Opening Tab Delimited Files
// Instantiate LoadOptions specified by the LoadFormat.
LoadOptions loadOptions5(LoadFormat::TabDelimited);
// Create a Workbook object and opening the file from its path
Workbook wbTabDelimited(dataDir + u"Book1TabDelimited.txt", loadOptions5);
// Show following message on console
std::cout << "TabDelimited file opened successfully!" << std::endl;
Aspose::Cells::Cleanup();

Apertura de archivos de Valores Separados por Comas y con pestañas (TSV)

El archivo de valores separados por comas y con pestañas (TSV) contiene datos de hojas de cálculo pero sin ningún formato. Es lo mismo que un archivo con formato de pestañas donde los datos están organizados en filas y columnas como en tablas y hojas de cálculo.

Aspose::Cells::Startup();
//Source directory
U16String sourceDir = u"";
// Instantiate LoadOptions specified by the LoadFormat.
LoadOptions loadOptions(LoadFormat::Tsv);
// Create a Workbook object and opening the file from its path
Workbook workbook(sourceDir + u"SampleTSVFile.tsv", loadOptions);
// Using the Sheet 1 in Workbook
Worksheet worksheet = workbook.GetWorksheets().Get(0);
// Accessing a cell using its name
Cell cell = worksheet.GetCells().Get(u"C3");
std::cout << "Cell Name: " << cell.GetName().ToUtf8() << " Value: " << cell.GetStringValue().ToUtf8() << std::endl;
Aspose::Cells::Cleanup();

Apertura de archivos SXC

StarOffice Calc es similar a Microsoft Excel y admite fórmulas, gráficos, funciones y macros. Las hojas de cálculo creadas con este software se guardan con la extensión SXC. El archivo SXC también se utiliza para los archivos de hojas de cálculo de OpenOffice.org Calc. Aspose.Cells puede leer archivos SXC como se muestra en el siguiente ejemplo de código.

Aspose::Cells::Startup();
//Source directory
U16String sourceDir = u"";
// Instantiate LoadOptions specified by the LoadFormat.
LoadOptions loadOptions(LoadFormat::Sxc);
// Create a Workbook object and opening the file from its path
Workbook workbook(sourceDir + u"SampleSXC.sxc", loadOptions);
// Using the Sheet 1 in Workbook
Worksheet worksheet = workbook.GetWorksheets().Get(0);
// Accessing a cell using its name
Cell cell = worksheet.GetCells().Get(u"C3");
std::cout << "Cell Name: " << cell.GetName().ToUtf8() << " Value: " << cell.GetStringValue().ToUtf8() << std::endl;
Aspose::Cells::Cleanup();

Apertura de archivos FODS

El archivo FODS es una hoja de cálculo guardada en OpenDocument XML sin ninguna compresión. Aspose.Cells puede leer archivos FODS como se muestra en el siguiente ejemplo de código.

Aspose::Cells::Startup();
//Source directory
U16String sourceDir = u"";
// Instantiate LoadOptions specified by the LoadFormat.
LoadOptions loadOptions(LoadFormat::Fods);
// Create a Workbook object and opening the file from its path
Workbook workbook(sourceDir + "SampleFods.fods", loadOptions);
// Show following message on console
std::cout << "FODS file opened successfully!" << std::endl;
Aspose::Cells::Cleanup();