Java

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 9

 INICIO


  Java  Programacion  Tips  Word  Genera Documentos Word desde Java

Genera Documentos Word desde Java

 Unknown  10:53

En esta nueva entrada, les explicaré una de las maneras existentes para que podamos generar un
documento de Word desde nuestra aplicación desarrollada en Java, esto con ayuda del api
llamada Apache POI.
Pues para empezar debemos descargar Apache POI. Esta api nos permite generar diferentes documentos
del Office de Microsoft, en esta oportunidad nos avocaremos a generar documentos para Word. Una vez
descargada; procedemos a descomprimir los archivos y agregaremos todos los archivos .jar en
las Libraries de nuestro proyecto en Java. (En mi caso uso el IDE Netbeans).

Luego de agregar todos los .jar ubicados dentro de la carpeta que habíamos descargado, ya podemos
empezar a trabajar la generación de nuestro documento.

Previos:
 Este documento lo generaremos combinando dos maneras de ingreso de texto (GUI y código)
 El documento constara de dos partes: Titulo y un Párrafo.
 La GUI será básica con solo una caja de texto (en la que ingresaremos el titulo del documento) y
un botón.

Paso 1:
Vamos a declarar dos variables, en una tendremos el titulo del documento y en la otra el contenido del
párrafo.

String tituloDocumento = titulo.getText();


String contenidoParrafo = "Este es un documento de prueba, generado para el blog Codigo de
Relleno demostrando la funcionalidad de Apache POI. ";

Paso 2:
Luego declaramos nuestro documento de la siguiente manera:

//Creamos el documento
XWPFDocument documento = new XWPFDocument();

//Declaramos el titulo y le asignamos algunas propiedades


XWPFParagraph titulo_doc = documento.createParagraph();
titulo_doc.setAlignment(ParagraphAlignment.CENTER);
titulo_doc.setVerticalAlignment(TextAlignment.TOP);

//Declaramos el parrafo y le asignamos algunas propiedades


XWPFParagraph parrafo = documento.createParagraph();
parrafo.setAlignment(ParagraphAlignment.BOTH);

Paso 3:
Una vez instanciadas las variables, ahora procedemos a dar formato a nuestro documento:
//Para el titulo
XWPFRun r1 = titulo_doc.createRun();
r1.setBold(true);
r1.setText(tituloDocumento);
r1.setFontFamily("Arial");
r1.setFontSize(14);
r1.setTextPosition(10);
r1.setUnderline(UnderlinePatterns.SINGLE);

//Para el parrafo
XWPFRun r2 = parrafo.createRun();
r2.setText(contenidoParrafo);
r2.setFontSize(12);
r2.addCarriageReturn();

Paso 4:
Para finalizar procedemos a escribir nuestro documento, en un FileOutputStream:

try {
FileOutputStream word = new FileOutputStream(tituloDocumento+".docx");
documento.write(word);
word.close();
Desktop.getDesktop().open(tituloDocumento+".docx");
} catch (FileNotFoundException ex) {
Logger.getLogger(JF_Validar.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException ex) {
Logger.getLogger(JF_Validar.class.getName()).log(Level.SEVERE, null, ex);
}

Y eso fue todo, así es como se puede generar documentos de Word en Java con Apache POI, Espero que
les sea de utilidad.
Dudas y/o sugerencias serán bienvenidas.

PD: Compártelo en tus redes sociales!

 
SIGUIENTE
Usando Fuentes Propias para Aplicaciones en Java
ANTERIOR
Configurar Virtualhost en Windows

7 COMENTARIOS

WRITE COMENTARIOS

Unknown
2 de agosto de 2016 a las 20:43delete

cual es exactamente es la libreria que debo de tener de apache? es que no se cual


descargar o en que parte del link apache viene?

Reply

Unknown
AUTHOR
3 de agosto de 2016 a las 09:00delete

Pues escoge uno de los Binary Distribution del Apache POI, y adjuntas esa libreria en tu
proyecto. Saludos
Reply

Unknown
10 de enero de 2018 a las 15:09delete

aquí tengo un problema


Desktop.getDesktop().open(tituloDocumento+".docx");
me dice que tituloDocumento es incompatible e intente convertirlo de tipo File pero me
sale lo mismo espero puedas ayudarme
Reply

JONATHAN MATTA ROMUALDO


17 de enero de 2018 a las 15:20delete

lo solucionaste bro
Reply

RAYMOND SANABRIA
4 de febrero de 2018 a las 07:01delete

no me quiere funcionar y no se que estoyy haciendo mal


String tituloDocumento = "HOLA MUNDO";
String contenidoParrafo = "Este es un documento de prueba, generado para el blog
Codigo de Relleno demostrando la funcionalidad de Apache POI. ";
//Creamos el documento
XWPFDocument documento = new XWPFDocument();
//Declaramos el titulo y le asignamos algunas propiedades
XWPFParagraph titulo_doc = documento.createParagraph();
titulo_doc.setAlignment(ParagraphAlignment.CENTER);
titulo_doc.setVerticalAlignment(TextAlignment.TOP);

//Declaramos el parrafo y le asignamos algunas propiedades


XWPFParagraph parrafo = documento.createParagraph();
parrafo.setAlignment(ParagraphAlignment.BOTH);
//Para el titulo
XWPFRun r1 = titulo_doc.createRun();
r1.setBold(true);
r1.setText(tituloDocumento);
r1.setFontFamily("Arial");
r1.setFontSize(14);
r1.setTextPosition(10);
r1.setUnderline(UnderlinePatterns.SINGLE);
//Para el parrafo
XWPFRun r2 = parrafo.createRun();
r2.setText(contenidoParrafo);
r2.setFontSize(12);
r2.addCarriageReturn();
try {
FileOutputStream word = new FileOutputStream(tituloDocumento+".docx");
documento.write(word);
word.close();
//Desktop.getDesktop().open(tituloDocumento+".docx");
} catch (FileNotFoundException ex) {
Logger.getLogger(CrearWork.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException ex) {
Logger.getLogger(CrearWork.class.getName()).log(Level.SEVERE, null, ex);
}

me genera error en la primera linea


Reply

Unknown
15 de marzo de 2019 a las 11:27delete

buen post.. ya lo inplemente y me ha funcionado correctamente... alguien me podria


apoyar indicando como puedo escribir en un archivo existente que tengo en una ruta
especifica.gracias
Reply

Unknown
15 de marzo de 2019 a las 11:28delete

buen post.. ya lo inplemente y me ha funcionado correctamente... alguien me podria


apoyar indicando como puedo escribir en un archivo existente que tengo en una ruta
especifica.gracias

Reply

Conversion Emoticon

ACERCA DE


 

 

 

 POPULAR


Genera Documentos Word desde Java
En esta nueva entrada, les explicaré una de las maneras existentes para que podamos generar un documento de Word desde
nuestra aplicación de...

Usando Fuentes Propias para Aplicaciones en Java
Para esta oportunidad les traigo un pequeño ejemplo de como podemos usar fuentes (que no tengamos instaladas en nuestra PC)
para nuestras ap...


Configurar Virtualhost en Windows
En mi reciente ingreso al mundo de desarrollo de aplicaciones web me vi en la necesidad de utilizar hosts virtuales en Windows,
en mi caso ...


Bienvenidos!
La primera entrada y no tenia muy bien definido sobre con que tema empezar, bueno esta será para darles la bienvenida y ademas
realizar una ...

FACEBOOK

ARCHIVO DEL BLOG

 ▼  2015 (4)
o ▼  julio (2)
 Usando Fuentes Propias para Aplicaciones en Java
 Genera Documentos Word desde Java
o ►  junio (2)

Copyright © 2015 Codigo de Relleno All Right Reserved - Powered by Blogger

Created by Arlina Design Published By Kaizen Template - Support KaizenThemes

También podría gustarte