[Java] Extraction de texte de PowerPoint (ppt) à l'aide d'Apache POI
Introduction h2>
J'avais besoin d'extraire du texte d'un grand nombre de fichiers PowerPoint, donc j'avais initialement prévu d'utiliser python-pptx, mais j'ai abandonné car les fichiers étaient jusqu'à PowerPoint 2003 (extension ppt).
Par conséquent, j'ai décidé d'extraire du texte en utilisant Apache POI , qui est une bibliothèque Java externe.
Qu'est-ce que Apache POI h2>
![apache poi.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/215216/93f84b23-ae06-5ae5-1904-1e35e8b675d8.png)
Apache POI est une bibliothèque 100% Java capable de lire et d'écrire des fichiers au format Microsoft Office.
En plus des points d'alimentation traités dans cet article, vous pouvez également utiliser Excel et Word.
Télécharger Apache POI h2>
Téléchargez Apache POI à partir de ici .
Programme h2>
Obtenez le texte de la diapositive sur la première page du fichier ppt suivant.
![ppt2txt.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/215216/47d3df1d-0137-e1a2-506e-24b1328ba356.png)
Cela fonctionne avec le programme suivant
PPT2txt.java
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.List;
import org.apache.poi.hslf.usermodel.HSLFSlide;
import org.apache.poi.hslf.usermodel.HSLFSlideShow;
import org.apache.poi.util.IOUtils;
public class PPT2txt {
public static void main(String[] args) throws IOException {
File file = new File("./data/test.ppt");
FileInputStream inputStream = new FileInputStream(file);
//Augmentez la valeur maximale si la taille du fichier à lire est importante
// IOUtils.setByteArrayMaxOverride(10000000);
HSLFSlideShow ppt = new HSLFSlideShow(inputStream);
//Obtenez un tableau de toutes les diapositives d'une présentation
List<HSLFSlide> slides = ppt.getSlides();
int page = 1;
int paragraph = 1;
System.out.println(slides.get(page).getTextParagraphs().get(paragraph));
ppt.close();
}
}
Résultat h2>
Vous pouvez obtenir le texte sur la première page en exécutant le programme.
[Texte de la 1ère page]
Conclusion h2>
Dans cet article, j'ai présenté la méthode d'extraction de texte jusqu'à Powerpoint 2003 (extension ppt), mais bien sûr c'est aussi possible avec le format de fichier après Powerpoint 2007 (extension pptx).
Dans ce cas, utilisez org.apache.poi.xslf au lieu de org.apache.poi.hslf.
En plus de l'extraction de texte, vous pouvez également acquérir des images et créer des diapositives. Dans ce cas, regardez le document et faites de votre mieux.
Merci d'avoir lu pour moi jusqu'à la fin.