Essendo uno sviluppatore di applicazioni Java che crea applicazioni di elaborazione dei documenti, potrebbe essere interessato a fornire la capacità di leggere documenti di parole nella tua applicazione Java ed estrarre il testo da questi documenti a livello di programmazione. È possibile sfruttare la potenza dell’API DOCX4J per leggere file docx ed estrarre il testo da questi file dalla tua applicazione Java. In questo articolo, mostreremo come utilizzare l’API DOCX4J per raggiungere il nostro obiettivo di lavorare con i file DOCX per l’estrazione del testo.

Come leggere ed estrarre il testo dai documenti di parole in Java?

Prima di iniziare a scrivere codice per la creazione di un file DOCX utilizzando l’API DOCX4J, è necessario configurare l’API DOCX4J nel tuo ambiente di sviluppo. Se non hai già installato e configurato API DOCX4J, puoi dare un’occhiata al nostro articolo su come installare API DOCX4J.

Extract Testo dal documento Word in Java

In questa fase, supponiamo di aver impostato il tuo ambiente di sviluppo e di essere pronto per iniziare a utilizzare l’API DOCX4J per estrarre il testo dai documenti di parole. Il seguente codice di esempio può essere utilizzato per questo scopo. Puoi copiarlo direttamente sul metodo principale dell’applicazione Java basata sulla console ed eseguirla.

// Load document
WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage.load(new File("FileFormat.docx"));
// Load main document part
MainDocumentPart mainDocumentPart = wordMLPackage.getMainDocumentPart();
// Extract nodes
String textNodesXPath = "//w:t";
List<Object> textNodes= mainDocumentPart.getJAXBNodesViaXPath(textNodesXPath, true);
// Print text
for (Object obj : textNodes) {
  Text text = (Text) ((JAXBElement) obj).getValue();
  String textValue = text.getValue();
  System.out.println(textValue);
}

Diamo un’occhiata a come funziona questo codice. Il documento Word viene caricato usando WordProcesingMlPackage ed è ulteriormente elaborato utilizzando la classe MainDocumentPart dell’API DOCX4J. Una volta caricato il documento, l’elenco dei nodi di testo viene ottenuto dall’oggetto MainDocumentPart contenente il documento effettivo. Ogni nodo di testo viene quindi letto come jaxbelement oggetto attraversandolo.

conclusione

Lavorare con documenti di parole all’interno della tua applicazione Java è facile con API DOCX4J. L’API ti aiuta ad aggiungere funzionalità di elaborazione dei documenti alle tue applicazioni Java senza entrare nei dettagli interni del formato di file sottostante. Continua a seguire questo blog per ulteriori esempi di lavoro con API DOCX4J.