Convertir PDF en Excel
Aspose.PDF pour Android via Java API vous permet de rendre vos fichiers PDF aux formats de fichier Excel XLS et XLSX. Nous avons déjà une autre API, connue sous le nom de Aspose.Cells pour Java, qui offre la possibilité de créer et de manipuler des classeurs Excel existants. Elle offre également la capacité de transformer des classeurs Excel au format PDF.
Convertir PDF en Excel XLS
Pour convertir des fichiers PDF au format XLS, Aspose.PDF dispose d’une classe appelée ExcelSaveOptions. Un objet de la classe ExcelSaveOptions est passé comme deuxième argument au constructeur Document.Save(..).
La conversion d’un fichier PDF en format XLSX fait partie de la bibliothèque d’Aspose.PDF pour la version Java 18.6. Afin de convertir des fichiers PDF au format XLSX, vous devez définir le format comme XLSX en utilisant la méthode setFormat() de la classe ExcelSaveOptions.
Le fragment de code suivant montre comment convertir un fichier PDF en format xls et .xlsx :
public void convertPDFtoExcelSimple() {
// Ouvrir le document PDF source
try {
document = new Document(inputStream);
} catch (Exception e) {
resultMessage.setText(e.getMessage());
return;
}
// Instancier l'objet ExcelSave Option
ExcelSaveOptions saveOptions = new ExcelSaveOptions();
File xlsFileName = new File(fileStorage, "PDF-to-Excel.xlsx");
try {
// Enregistrer le fichier au format MS document
document.save(xlsFileName.toString(), SaveFormat.Excel);
}
catch (Exception e) {
resultMessage.setText(e.getMessage());
return;
}
resultMessage.setText(R.string.success_message);
}
Convertir PDF en XLS avec contrôle de colonne
Lors de la conversion d’un PDF en format XLS, une colonne vide est ajoutée au fichier de sortie en tant que première colonne. L’option InsertBlankColumnAtFirst de la classe ExcelSaveOptions est utilisée pour contrôler cette colonne. Sa valeur par défaut est true.
public void convertPDFtoExcelAdvanced_InsertBlankColumnAtFirst() {
// Ouvrir le document PDF source
try {
document = new Document(inputStream);
} catch (Exception e) {
resultMessage.setText(e.getMessage());
return;
}
// Instancier un objet ExcelSave Option
ExcelSaveOptions excelSaveOptions = new ExcelSaveOptions();
excelSaveOptions.setInsertBlankColumnAtFirst(false);
File xlsFileName = new File(fileStorage, "PDF-to-Excel.xlsx");
try {
// Enregistrer le fichier au format document MS
document.save(xlsFileName.toString(), excelSaveOptions);
}
catch (Exception e) {
resultMessage.setText(e.getMessage());
return;
}
resultMessage.setText(R.string.success_message);
}
Convertir un PDF en une Feuille de Calcul Excel Unique
Lors de l’exportation d’un fichier PDF avec de nombreuses pages vers XLS, chaque page est exportée vers une feuille différente dans le fichier Excel. Cela est dû au fait que la propriété MinimizeTheNumberOfWorksheets est définie sur false par défaut. Pour s’assurer que toutes les pages sont exportées vers une seule feuille dans le fichier Excel de sortie, définissez la propriété MinimizeTheNumberOfWorksheets sur true.
public void convertPDFtoExcelAdvanced_MinimizeTheNumberOfWorksheets() {
// Ouvrir le document PDF source
try {
document = new Document(inputStream);
} catch (Exception e) {
resultMessage.setText(e.getMessage());
return;
}
// Instancier l'objet ExcelSave Option
ExcelSaveOptions excelSaveOptions = new ExcelSaveOptions();
excelSaveOptions.setMinimizeTheNumberOfWorksheets(true);
// Enregistrer la sortie en XLSX
File xlsFileName = new File(fileStorage, "PDF-to-Excel.xlsx");
try {
// Enregistrer le fichier au format MS Excel
document.save(xlsFileName.toString(), excelSaveOptions);
}
catch (Exception e) {
resultMessage.setText(e.getMessage());
return;
}
resultMessage.setText(R.string.success_message);
}
Convertir au format XLSX
Par défaut, Aspose.PDF utilise XML Spreadsheet 2003 pour stocker les données. Afin de convertir les fichiers PDF au format XLSX, Aspose.PDF dispose d’une classe appelée ExcelSaveOptions avec Format. Un objet de la classe ExcelSaveOptions est passé en tant que deuxième argument à la méthode Document.Save(..).
public void convertPDFtoExcelAdvanced_SaveCSV() {
// Charger le document PDF
try {
document = new Document(inputStream);
} catch (Exception e) {
resultMessage.setText(e.getMessage());
return;
}
// Instancier l'objet d'option d'enregistrement Excel
ExcelSaveOptions excelSaveOptions = new ExcelSaveOptions();
excelSaveOptions.setFormat(ExcelSaveOptions.ExcelFormat.CSV);
// Enregistrer la sortie en CSV
File xlsFileName = new File(fileStorage, "PDF-to-Excel.csv");
try {
// Enregistrer le fichier au format CSV
document.save(xlsFileName.toString(), excelSaveOptions);
}
catch (Exception e) {
resultMessage.setText(e.getMessage());
return;
}
resultMessage.setText(R.string.success_message);
}