Extraer objetos OLE del libro de trabajo
Contents
[
Hide
]
veces, necesita extraer objetos OLE de un libro de trabajo. Aspose.Cells admite la extracción y el almacenamiento de esos objetos OLE como se muestra en este artículo.
Extraer objetos OLE de un libro de trabajo
Creación de un libro de plantilla
- Creó una hoja de cálculo en Microsoft Excel.
- Agregue un documento de Word Microsoft, un libro de Excel y un documento PDF como objetos OLE en la primera hoja de trabajo.
Extraer objetos OLE
El siguiente código hace el trabajo real de encontrar y extraer objetos OLE como archivos DOCX, XLSX, PPTX y PDF.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getDataDir(ExtractOLEObjects.class); | |
// Instantiating a Workbook object, Open the template file. | |
Workbook workbook = new Workbook(dataDir + "oleFile.xlsx"); | |
// Get the OleObject Collection in the first worksheet. | |
OleObjectCollection objects = workbook.getWorksheets().get(0).getOleObjects(); | |
// Loop through all the OleObjects and extract each object in the worksheet. | |
for (int i = 0; i < objects.getCount(); i++) { | |
OleObject object = objects.get(i); | |
// Specify the output filename. | |
String fileName = "D:/object" + i + "."; | |
// Specify each file format based on the OleObject format type. | |
switch (object.getFileFormatType()) { | |
case FileFormatType.DOCX: | |
fileName += "docx"; | |
break; | |
case FileFormatType.XLSX: | |
fileName += "xlsx"; | |
break; | |
case FileFormatType.PPTX: | |
fileName += "pptx"; | |
break; | |
case FileFormatType.PDF: | |
fileName += "pdf"; | |
break; | |
case FileFormatType.UNKNOWN: | |
fileName += "jpg"; | |
break; | |
default: | |
// ........ | |
break; | |
} | |
// Save the OleObject as a new excel file if the object type is xls. | |
if (object.getFileFormatType() == FileFormatType.XLSX) { | |
byte[] bytes = object.getObjectData(); | |
InputStream is = new ByteArrayInputStream(bytes); | |
Workbook oleBook = new Workbook(is); | |
oleBook.getSettings().setHidden(false); | |
oleBook.save(fileName); | |
} | |
// Create the files based on the OleObject format types. | |
else { | |
FileOutputStream fos = new FileOutputStream(fileName); | |
fos.write(object.getObjectData()); | |
fos.close(); | |
} | |
} |
Conclusión:
Este artículo muestra cómo extraer objetos OLE de un libro de trabajo usando Aspose.Cells. Con suerte, le dará una idea que le permitirá usar estas opciones en sus propios escenarios.