Apache POI Word - Guia rápido
Muitas vezes, um aplicativo de software é necessário para gerar documentos de referência no formato de arquivo do Microsoft Word. Às vezes, espera-se até que um aplicativo receba arquivos do Word como dados de entrada.
Qualquer programador Java que deseja produzir arquivos MS-Office como saída deve usar uma API predefinida e somente leitura para fazer isso.
O que é Apache POI?
Apache POI é uma API popular que permite aos programadores criar, modificar e exibir arquivos do MS-Office usando programas Java. É uma biblioteca de código aberto desenvolvida e distribuída pela Apache Software Foundation para projetar ou modificar arquivos do MS-Office usando o programa Java. Ele contém classes e métodos para decodificar os dados de entrada do usuário ou um arquivo em documentos do MS-Office.
Componentes do Apache POI
O Apache POI contém classes e métodos para trabalhar em todos os documentos compostos OLE2 do MS-Office. A lista de componentes desta API é fornecida abaixo -
POIFS (Poor Obfuscation Implementation File System)- Este componente é o fator básico de todos os outros elementos POI. É usado para ler diferentes arquivos explicitamente.
HSSF (Horrible SpreadSheet Format) - É usado para ler e escrever no formato .xls de arquivos MS-Excel.
XSSF (XML SpreadSheet Format) - É usado para o formato de arquivo .xlsx do MS-Excel.
HPSF (Horrible Property Set Format) - É usado para extrair conjuntos de propriedades dos arquivos do MS-Office.
HWPF (Horrible Word Processor Format) - É usado para ler e escrever arquivos de extensão .doc do MS-Word.
XWPF (XML Word Processor Format) - É usado para ler e escrever .docx arquivos de extensão do MS-Word.
HSLF (Horrible Slide Layout Format) - É usado para ler, criar e editar apresentações do PowerPoint.
HDGF (Horrible DiaGram Format) - Contém classes e métodos para arquivos binários do MS-Visio.
HPBF (Horrible PuBlisher Format) - É usado para ler e gravar arquivos MS-Publisher.
Este tutorial o orienta através do processo de trabalho em arquivos MS-Word usando Java. Portanto, a discussão está confinada aos componentes HWPF e XWPF.
Note- VERSÕES ANTIGAS DE FORMATOS DE ARQUIVOS BINÁRIOS DE APOIO DE POI, COMO DOC, XLS, PPT, ETC. A VERSÃO 3.5 EM SEGUIDA, POI APOIA FORMATOS DE ARQUIVOS OOXML DE MS-OFFICE, COMO DOCX, XLSX, PPTX, ETC.
Este capítulo o conduz pelo processo de configuração do Apache POI em sistemas baseados em Windows e Linux. O Apache POI pode ser facilmente instalado e integrado ao seu ambiente Java atual, seguindo algumas etapas simples sem quaisquer procedimentos de configuração complexos. A administração do usuário é necessária durante a instalação.
Requisitos de sistema
JDK | Java SE 2 JDK 1.5 ou superior |
Memória | 1 GB de RAM (recomendado) |
Espaço em disco | Sem requisitos mínimos |
Versão do sistema operacional | Windows XP ou superior, Linux |
Vamos agora prosseguir com as etapas para instalar o Apache POI.
Etapa 1: verifique a instalação do Java
Em primeiro lugar, você precisa ter o Java Software Development Kit (SDK) instalado em seu sistema. Para verificar isso, execute qualquer um dos dois comandos mencionados abaixo, dependendo da plataforma em que está trabalhando.
Se a instalação do Java foi feita corretamente, ele exibirá a versão atual e as especificações de sua instalação do Java. Um exemplo de saída é fornecido na tabela a seguir -
Plataforma | Comando | Saída de amostra |
---|---|---|
janelas | Abra o console de comando e digite - \>java –version |
Versão Java "1.7.0_60" Java (TM) SE Run Time Environment (build 1.7.0_60-b19) Java Hotspot (TM) Servidor VM de 64 bits (versão 24.60-b09, modo misto) |
Linux | Abra o terminal de comando e digite - $java –version |
versão java "1.7.0_25" Open JDK Runtime Environment (rhel-2.3.10.4.el6_4-x86_64) Abra o servidor VM JDK de 64 bits (compilação 23.7-b01, modo misto) |
Presumimos que os leitores deste tutorial tenham o Java SDK versão 1.7.0_60 instalado em seus sistemas.
Caso você não tenha Java SDK, baixe sua versão atual em https://www.oracle.com/technetwork/java/javase/downloads/index.html e instalá-lo.
Etapa 2: definir seu ambiente Java
Defina a variável de ambiente JAVA_HOME para apontar para o local do diretório base onde o Java está instalado em sua máquina. Por exemplo,
Plataforma | Descrição |
---|---|
janelas | Defina JAVA_HOME como C: \ ProgramFiles \ java \ jdk1.7.0_60 |
Linux | Exportar JAVA_HOME = / usr / local / java-current |
Anexe o caminho completo do local do compilador Java ao Caminho do sistema.
Plataforma | Descrição |
---|---|
janelas | Anexe a string "C: \ Arquivos de programas \ Java \ jdk1.7.0_60 \ bin" ao final da variável de sistema PATH. |
Linux | Exportar PATH = $ PATH: $ JAVA_HOME / bin / |
Execute o comando java - version no prompt de comando, conforme explicado acima.
Etapa 3: Instale a biblioteca Apache POI
Baixe a versão mais recente do Apache POI de https://poi.apache.org/download.htmle descompacte seu conteúdo em uma pasta de onde as bibliotecas necessárias podem ser vinculadas ao seu programa Java. Vamos supor que os arquivos sejam coletados em uma pasta na unidade C.
As imagens a seguir mostram os diretórios e a estrutura de arquivos dentro da pasta baixada -
![](https://assets.edu.lat/apache_poi_word/images/jar_hirarchi.jpg)
![](https://assets.edu.lat/apache_poi_word/images/jar_hirarchi_2.jpg)
Adicione o caminho completo dos cinco jars como destacado na imagem acima para CLASSPATH.
Plataforma | Descrição |
---|---|
janelas | Anexe as seguintes strings ao final da variável de usuário CLASSPATH - “C: \ poi-3.9 \ poi-3.9-20121203.jar;” “C: \ poi-3.9 \ poi-ooxml-3.9-20121203.jar;” “C: \ poi-3.9 \ poi-ooxml-schemas-3.9-20121203.jar;” “C: \ poi-3.9 \ ooxml-lib \ dom4j-1.6.1.jar;” “C: \ poi-3.9 \ ooxml-lib \ xmlbeans-2.3.0.jar;.;” |
Linux | Exportar CLASSPATH = $ CLASSPATH: /usr/share/poi-3.9/poi-3.9-20121203.tar: /usr/share/poi-3.9/poi-ooxml-schemas-3.9-20121203.tar: /usr/share/poi-3.9/poi-ooxml-3.9-20121203.tar: /usr/share/poi-3.9/ooxml-lib/dom4j-1.6.1.tar: /usr/share/poi-3.9/ooxml-lib/xmlbeans-2.3.0.tar |
Este capítulo apresenta as classes e métodos do Apache POI para gerenciar um documento do Word.
Documento
Esta é uma interface de marcador (interface não contém métodos), que avisa que a classe implementada pode ser capaz de criar um documento do Word.
XWPFDocument
Esta é uma aula sob org.apache.poi.xwpf.usermodelpacote. É usado para criar documentos do MS-Word com formato de arquivo .docx.
Métodos de aula
Sr. Não. | Método e Descrição |
---|---|
1 | commit() Confirma e salva o documento. |
2 | createParagraph() Acrescenta um novo parágrafo a este documento. |
3 | createTable() Cria uma tabela vazia com uma linha e uma coluna como padrão. |
4 | createTOC() Cria um índice para o documento do Word. |
5 | getParagraphs() Retorna o (s) parágrafo (s) que contém o texto do cabeçalho ou rodapé. |
6 | getStyle() Retorna o objeto de estilos usado. |
Para os métodos restantes desta classe, consulte o documento API completo em -
Pacote org.apache.poi.openxml4j.opc.internal .
XWPFParagraph
Esta é uma aula sob org.apache.poi.xwpf.usermodelpacote e é usado para criar parágrafos em um documento do Word. Esta instância também é usada para adicionar todos os tipos de elementos ao documento do Word.
Métodos de aula
Sr. Não. | Método e Descrição |
---|---|
1 | createRun() Acrescenta uma nova execução a este parágrafo. |
2 | getAlignment() Retorna o alinhamento do parágrafo que deve ser aplicado ao texto neste parágrafo. |
3 | setAlignment(ParagraphAlignment align) Especifica o alinhamento do parágrafo que deve ser aplicado ao texto neste parágrafo. |
4 | setBorderBottom(Borders border) Especifica a borda que deve ser exibida abaixo de um conjunto de parágrafos, que têm o mesmo conjunto de configurações de borda de parágrafo. |
5 | setBorderLeft(Borders border) Especifica a borda que deve ser exibida no lado esquerdo da página em torno do parágrafo especificado. |
6 | setBorderRight(Borders border) Especifica a borda que deve ser exibida no lado direito da página em torno do parágrafo especificado. |
7 | setBorderTop(Borders border) Especifica a borda que deve ser exibida acima de um conjunto de parágrafos que possuem o mesmo conjunto de configurações de borda de parágrafo. |
Para os métodos restantes desta classe, consulte o documento API completo em -
XWPFRun
Esta é uma aula sob org.apache.poi.xwpf.usermodel pacote e é usado para adicionar uma região de texto ao parágrafo.
Métodos de aula
Sr. Não. | Método e Descrição |
---|---|
1 | addBreak() Especifica que uma pausa deve ser colocada no local atual no conteúdo da corrida. |
2 | addTab() Especifica que uma guia deve ser colocada no local atual no conteúdo da corrida. |
3 | setColor(java.lang.String rgbStr) Define a cor do texto. |
4 | setFontSize(int size) Especifica o tamanho da fonte que deve ser aplicado a todos os caracteres de script não complexos no conteúdo desta execução quando exibido. |
5 | setText(java.lang.String value) Define o texto desta sequência de texto. |
6 | setBold(boolean value) Especifica se a propriedade negrito deve ser aplicada a todos os caracteres de script não complexos no conteúdo desta execução quando exibida em um documento. |
Para os métodos restantes desta classe, consulte o documento API completo em -
XWPFStyle
Esta é uma aula sob org.apache.poi.xwpf.usermodel pacote e é usado para adicionar estilos diferentes aos elementos do objeto em um documento do Word.
Métodos de aula
Sr. Não. | Método e Descrição |
---|---|
1 | getNextStyleID() É usado para obter o StyleID do próximo estilo. |
2 | getStyleId() É usado para obter o StyleID do estilo. |
3 | getStyles() É usado para obter estilos. |
4 | setStyleId(java.lang.String styleId) É usado para definir o styleID. |
Para os métodos restantes desta classe, consulte o documento API completo em -
XWPFTable
Esta é uma aula sob org.apache.poi.xwpf.usermodel pacote e é usado para adicionar dados de tabela em um documento do Word.
Métodos de aula
Sr. Não. | Método e Descrição |
---|---|
1 | addNewCol() Adiciona uma nova coluna para cada linha nesta tabela. |
2 | addRow(XWPFTableRow row, int pos) Adiciona uma nova linha à tabela na posição pos. |
3 | createRow() Cria um novo objeto XWPFTableRow com tantas células quantas forem as colunas definidas naquele momento. |
4 | setWidth(int width) Define a largura da coluna. |
Para os métodos restantes desta classe, consulte o documento API completo em: POI API Documentation
XWPFWordExtractor
Esta é uma aula sob org.apache.poi.xwpf.extractorpacote. É uma classe de analisador básica usada para extrair o texto simples de um documento do Word.
Métodos de aula
Sr. Não. | Método e Descrição |
---|---|
1 | getText() Recupera todo o texto do documento. |
Para os métodos restantes desta classe, consulte o documento API completo em: POI API Documentation
Aqui, o termo 'documento' se refere a um arquivo MS-Word. Após a conclusão deste capítulo, você será capaz de criar novos documentos e abrir documentos existentes usando seu programa Java.
Criar Documento em Branco
O seguinte programa simples é usado para criar um documento em branco do MS-Word -
import java.io.File;
import java.io.FileOutputStream;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
public class CreateDocument {
public static void main(String[] args)throws Exception {
//Blank Document
XWPFDocument document = new XWPFDocument();
//Write the Document in file system
FileOutputStream out = new FileOutputStream( new File("createdocument.docx"));
document.write(out);
out.close();
System.out.println("createdocument.docx written successully");
}
}
Salve o código Java acima como CreateDocument.java, e então compilar e executar a partir do prompt de comando da seguinte forma -
$javac CreateDocument.java
$java CreateDocument
Se o ambiente do seu sistema estiver configurado com a biblioteca POI, ele irá compilar e executar para gerar um arquivo Excel em branco chamado createdocument.docx em seu diretório atual e exibir a seguinte saída no prompt de comando -
createdocument.docx written successfully
Neste capítulo, você aprenderá como criar um parágrafo e como adicioná-lo a um documento usando Java. O parágrafo é uma parte de uma página em um arquivo do Word.
Depois de concluir este capítulo, você será capaz de criar um parágrafo e realizar operações de leitura nele.
Crie um Parágrafo
Em primeiro lugar, vamos criar um parágrafo usando as classes referenciadas discutidas nos capítulos anteriores. Seguindo o capítulo anterior, crie um Documento primeiro, e então podemos criar um Parágrafo.
O seguinte snippet de código é usado para criar uma planilha -
//Create Blank document
XWPFDocument document = new XWPFDocument();
//Create a blank spreadsheet
XWPFParagraph paragraph = document.createParagraph();
Executar no parágrafo
Você pode inserir o texto ou qualquer elemento de objeto, usando Run. Usando a instância de parágrafo, você pode criarrun.
O fragmento de código a seguir é usado para criar uma execução.
XWPFRun run = paragraph.createRun();
Escreva em um parágrafo
Vamos tentar inserir algum texto em um documento. Considere os dados de texto abaixo -
At tutorialspoint.com, we strive hard to provide quality tutorials for self-learning
purpose in the domains of Academics, Information Technology, Management and Computer
Programming Languages.
O código a seguir é usado para gravar os dados acima em um parágrafo.
import java.io.File;
import java.io.FileOutputStream;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.XWPFRun;
public class CreateParagraph {
public static void main(String[] args)throws Exception {
//Blank Document
XWPFDocument document = new XWPFDocument();
//Write the Document in file system
FileOutputStream out = new FileOutputStream(new File("createparagraph.docx"));
//create Paragraph
XWPFParagraph paragraph = document.createParagraph();
XWPFRun run = paragraph.createRun();
run.setText("At tutorialspoint.com, we strive hard to " +
"provide quality tutorials for self-learning " +
"purpose in the domains of Academics, Information " +
"Technology, Management and Computer Programming
Languages.");
document.write(out);
out.close();
System.out.println("createparagraph.docx written successfully");
}
}
Salve o código Java acima como CreateParagraph.java, e, em seguida, compilar e executá-lo a partir do prompt de comando da seguinte maneira -
$javac CreateParagraph.java
$java CreateParagraph
Ele irá compilar e executar para gerar um arquivo Word chamado createparagraph.docx em seu diretório atual e você obterá a seguinte saída no prompt de comando -
createparagraph.docx written successfully
o createparagraph.docx arquivo tem a seguinte aparência.
![](https://assets.edu.lat/apache_poi_word/images/createparagraph.jpg)
Neste capítulo, você aprenderá como aplicar a borda a um parágrafo usando a programação Java.
Aplicando Borda
O código a seguir é usado para aplicar bordas em um documento -
import java.io.File;
import java.io.FileOutputStream;
import org.apache.poi.xwpf.usermodel.Borders;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.XWPFRun;
public class ApplyingBorder {
public static void main(String[] args)throws Exception {
//Blank Document
XWPFDocument document = new XWPFDocument();
//Write the Document in file system
FileOutputStream out = new FileOutputStream(new File("applyingborder.docx"));
//create paragraph
XWPFParagraph paragraph = document.createParagraph();
//Set bottom border to paragraph
paragraph.setBorderBottom(Borders.BASIC_BLACK_DASHES);
//Set left border to paragraph
paragraph.setBorderLeft(Borders.BASIC_BLACK_DASHES);
//Set right border to paragraph
paragraph.setBorderRight(Borders.BASIC_BLACK_DASHES);
//Set top border to paragraph
paragraph.setBorderTop(Borders.BASIC_BLACK_DASHES);
XWPFRun run = paragraph.createRun();
run.setText("At tutorialspoint.com, we strive hard to " +
"provide quality tutorials for self-learning " +
"purpose in the domains of Academics, Information " +
"Technology, Management and Computer Programming " +
"Languages.");
document.write(out);
out.close();
System.out.println("applyingborder.docx written successully");
}
}
Salve o código acima em um arquivo chamado ApplyingBorder.java, compile e execute-o a partir do prompt de comando da seguinte forma -
$javac ApplyingBorder.java
$java ApplyingBorder
Se o seu sistema estiver configurado com a biblioteca POI, ele irá compilar e executar para gerar um documento Word chamado applyingborder.docx em seu diretório atual e exiba a seguinte saída -
applyingborder.docx written successfully
o applyingborder.docx arquivo tem a seguinte aparência -
![](https://assets.edu.lat/apache_poi_word/images/borderparagraph.jpg)
Neste capítulo, você aprenderá a criar uma tabela de dados em um documento. Você pode criar uma tabela de dados usandoXWPFTableclasse. Adicionando cadaRow à mesa e adicionando cada cell para Row, você obterá dados da tabela.
Criar a tabela
O código a seguir é usado para criar uma tabela em um documento -
import java.io.File;
import java.io.FileOutputStream;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFTable;
import org.apache.poi.xwpf.usermodel.XWPFTableRow;
public class CreateTable {
public static void main(String[] args)throws Exception {
//Blank Document
XWPFDocument document = new XWPFDocument();
//Write the Document in file system
FileOutputStream out = new FileOutputStream(new File("create_table.docx"));
//create table
XWPFTable table = document.createTable();
//create first row
XWPFTableRow tableRowOne = table.getRow(0);
tableRowOne.getCell(0).setText("col one, row one");
tableRowOne.addNewTableCell().setText("col two, row one");
tableRowOne.addNewTableCell().setText("col three, row one");
//create second row
XWPFTableRow tableRowTwo = table.createRow();
tableRowTwo.getCell(0).setText("col one, row two");
tableRowTwo.getCell(1).setText("col two, row two");
tableRowTwo.getCell(2).setText("col three, row two");
//create third row
XWPFTableRow tableRowThree = table.createRow();
tableRowThree.getCell(0).setText("col one, row three");
tableRowThree.getCell(1).setText("col two, row three");
tableRowThree.getCell(2).setText("col three, row three");
document.write(out);
out.close();
System.out.println("create_table.docx written successully");
}
}
Salve o código acima em um arquivo chamado CreateTable.java. Compile e execute-o a partir do prompt de comando da seguinte maneira -
$javac CreateTable.java
$java CreateTable
Ele gera um arquivo Word chamado createtable.docx em seu diretório atual e exibir a seguinte saída no prompt de comando -
createtable.docx written successfully
o createtable.docx arquivo tem a seguinte aparência -
![](https://assets.edu.lat/apache_poi_word/images/ctratetable.jpg)
Este capítulo mostra como aplicar diferentes estilos de fonte e alinhamentos em um documento do Word usando Java. Geralmente, o Estilo da fonte contém: Tamanho da fonte, Tipo, Negrito, Itálico e Sublinhado. E o alinhamento é categorizado em esquerda, centro, direita e justificar.
Estilo de fonte
O código a seguir é usado para definir diferentes estilos de fonte -
import java.io.File;
import java.io.FileOutputStream;
import org.apache.poi.xwpf.usermodel.VerticalAlign;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.XWPFRun;
public class FontStyle {
public static void main(String[] args)throws Exception {
//Blank Document
XWPFDocument document = new XWPFDocument();
//Write the Document in file system
FileOutputStream out = new FileOutputStream(new File("fontstyle.docx"));
//create paragraph
XWPFParagraph paragraph = document.createParagraph();
//Set Bold an Italic
XWPFRun paragraphOneRunOne = paragraph.createRun();
paragraphOneRunOne.setBold(true);
paragraphOneRunOne.setItalic(true);
paragraphOneRunOne.setText("Font Style");
paragraphOneRunOne.addBreak();
//Set text Position
XWPFRun paragraphOneRunTwo = paragraph.createRun();
paragraphOneRunTwo.setText("Font Style two");
paragraphOneRunTwo.setTextPosition(100);
//Set Strike through and Font Size and Subscript
XWPFRun paragraphOneRunThree = paragraph.createRun();
paragraphOneRunThree.setStrike(true);
paragraphOneRunThree.setFontSize(20);
paragraphOneRunThree.setSubscript(VerticalAlign.SUBSCRIPT);
paragraphOneRunThree.setText(" Different Font Styles");
document.write(out);
out.close();
System.out.println("fontstyle.docx written successully");
}
}
Salve o código acima como FontStyle.java e então compilar e executar a partir do prompt de comando da seguinte forma -
$javac FontStyle.java
$java FontStyle
Irá gerar um arquivo Word chamado fontstyle.docx em seu diretório atual e exibir a seguinte saída no prompt de comando -
fontstyle.docx written successfully
o fontstyle.docx arquivo tem a seguinte aparência.
![](https://assets.edu.lat/apache_poi_word/images/fontstyle.jpg)
Alinhamento
O código a seguir é usado para definir o alinhamento do texto do parágrafo -
import java.io.File;
import java.io.FileOutputStream;
import org.apache.poi.xwpf.usermodel.ParagraphAlignment;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.XWPFRun;
public class AlignParagraph {
public static void main(String[] args)throws Exception {
//Blank Document
XWPFDocument document = new XWPFDocument();
//Write the Document in file system
FileOutputStream out = new FileOutputStream(
new File("alignparagraph.docx"));
//create paragraph
XWPFParagraph paragraph = document.createParagraph();
//Set alignment paragraph to RIGHT
paragraph.setAlignment(ParagraphAlignment.RIGHT);
XWPFRun run = paragraph.createRun();
run.setText("At tutorialspoint.com, we strive hard to " +
"provide quality tutorials for self-learning " +
"purpose in the domains of Academics, Information " +
"Technology, Management and Computer Programming " +
"Languages.");
//Create Another paragraph
paragraph = document.createParagraph();
//Set alignment paragraph to CENTER
paragraph.setAlignment(ParagraphAlignment.CENTER);
run = paragraph.createRun();
run.setText("The endeavour started by Mohtashim, an AMU " +
"alumni, who is the founder and the managing director " +
"of Tutorials Point (I) Pvt. Ltd. He came up with the " +
"website tutorialspoint.com in year 2006 with the help" +
"of handpicked freelancers, with an array of tutorials" +
" for computer programming languages. ");
document.write(out);
out.close();
System.out.println("alignparagraph.docx written successfully");
}
}
Salve o código acima como AlignParagraph.java e então compilar e executar a partir do prompt de comando da seguinte forma -
$javac AlignParagraph.java
$java AlignParagraph
Irá gerar um arquivo Word chamado alignparagraph.docx em seu diretório atual e exibir a seguinte saída no prompt de comando -
alignparagraph.docx written successfully
o alignparagraph.docx arquivo tem a seguinte aparência -
![](https://assets.edu.lat/apache_poi_word/images/alignparagraph.jpg)
Este capítulo explica como extrair dados de texto simples de um documento do Word usando Java. Caso você queira extrair metadados de um documento do Word, use o Apache Tika.
Para arquivos .docx, usamos a classe org.apache.poi.xwpf.extractor.XPFFWordExtractor que extrai e retorna dados simples de um arquivo Word. Da mesma forma, temos diferentes metodologias para extrair títulos, notas de rodapé, dados de tabelas, etc. de um arquivo Word.
O código a seguir mostra como extrair texto simples de um arquivo Word -
import java.io.FileInputStream;
import org.apache.poi.xwpf.extractor.XWPFWordExtractor;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
public class WordExtractor {
public static void main(String[] args)throws Exception {
XWPFDocument docx = new XWPFDocument(new FileInputStream("create_paragraph.docx"));
//using XWPFWordExtractor Class
XWPFWordExtractor we = new XWPFWordExtractor(docx);
System.out.println(we.getText());
}
}
Salve o código acima como WordExtractor.java. Compile e execute-o a partir do prompt de comando da seguinte maneira -
$javac WordExtractor.java
$java WordExtractor
Ele irá gerar a seguinte saída:
At tutorialspoint.com, we strive hard to provide quality tutorials for self-learning
purpose in the domains of Academics, Information Technology, Management and Computer
Programming Languages.