Código de Java - Convertir archivos txt a PDF (1.0)

Imágen de perfil

Convertir archivos txt a PDF (1.0)gráfica de visualizaciones


Java

estrellaestrellaestrellaestrellaestrella(3)
Publicado el 11 de Marzo del 2016 por Diego
1.227 visualizaciones desde el 11 de Marzo del 2016. Una media de 35 por semana
Este programa es una versión rudimentaria para convertir archivos .txt a PDF. Utiliza la clase jFileChooser para seleccionar el archivo a convertir y genera la salida con el mismo nombre.

En esta primera versión, la salida no siempre queda igual que el original ya que no tiene en cuenta separación de párrafos ni centrado de títulos, etc.

1.0
estrellaestrellaestrellaestrellaestrella(3)

Publicado el 11 de Marzo del 2016gráfica de visualizaciones de la versión: 1.0
1.228 visualizaciones desde el 11 de Marzo del 2016. Una media de 35 por semana
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
package txtPdf;
/**
 * 
 * @author Diego
 */
import java.io.*;
 
import javax.swing.JFileChooser;
import javax.swing.filechooser.FileNameExtensionFilter;
 
import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.PdfWriter;
 
public class TxtToPDF {
 
	public static void main(String[] args) throws FileNotFoundException, DocumentException
	{
	    String linea, FileName;
	    File InFile = null;
	    FileReader fr = null;
	    BufferedReader br = null;
 
	    //Selecciona el archivo a convertir.
	    FileName = SelectTxtFile();
 
	    // Abre el archivo y crea el reader.
	    InFile = new File (FileName);
	    fr = new FileReader (InFile);
            br = new BufferedReader(fr);
 
            //Crea el documento de salida.
	    FileOutputStream archivo = new FileOutputStream("C:\\" + InFile.getName() + ".pdf");
	    Document documento = new Document();
	    PdfWriter.getInstance(documento, archivo);
	    documento.open();
 
	    try{
	          while((linea=br.readLine())!=null){
                  documento = AddNewLine(documento,linea);
            }
 
	    }catch(Exception e){e.printStackTrace();
 
	    }finally{
	         // En el finally cerramos el fichero, para asegurarnos en cualquier circunstancia.
	         try{
	            if( null != fr ){
	               fr.close();
	            }
	         }catch (Exception e2){
	            e2.printStackTrace();
	         }
	      }
 
	    //Cerramos el documento PDF.
	    documento.close();
 
	}
 
 
	/**
	 * Método: AddNewLine()
	 * @param doc
	 * @param linea
	 * @return
	 */
	static public Document AddNewLine(Document doc, String linea)
	{
		try{
		doc.add(new Paragraph(linea));
		}catch(DocumentException de){de.printStackTrace();}
 
		return doc;
	}
 
 
	/**
	 * Método: SelectTxtFile()
	 * @return
	 */
	static public String SelectTxtFile(){
 
		int returnValue;
		File selectedFile = null;
		String FileName = "";
 
		JFileChooser fileChooser = new JFileChooser();
		FileNameExtensionFilter filter = new FileNameExtensionFilter("TXT","txt");
		fileChooser.setFileFilter(filter);
		fileChooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
	        returnValue = fileChooser.showOpenDialog(null);
 
	        if (returnValue == JFileChooser.APPROVE_OPTION) {
			selectedFile = fileChooser.getSelectedFile();
			FileName = selectedFile.getPath();
		  }
 
		return FileName;
	}
 
}



Comentarios sobre la versión: 1.0 (3)

Imágen de perfil
Ing. Domenico
12 de Marzo del 2016
estrellaestrellaestrellaestrellaestrella
miy buen aporte
Responder
Ronald Escalante Gomez
06 de Septiembre del 2016
estrellaestrellaestrellaestrellaestrella
buenas tardes
muchas garcias por el aporte.
unas dudas
Esto solo va en solo en una clase digo porque al comienzo dice ( package txtPdf;) que si no me equivo es la parte principal y luego sera que hay que generar una clase (TxtToPDF)
o estare confundido..

soy un aprendiz de java en netbeans
soy de venezuela
muchas garcias
Responder
Imágen de perfil
Diego
07 de Septiembre del 2016
estrellaestrellaestrellaestrellaestrella
Hola Ronald:

Efectivamente; el nombre del package me permite tener ordenado el código dentro de un único conjunto; como bien decís, en este caso se trata de una sola clase, de modo que podés prescindir del mismo si te resulta más cómodo.

Saludos desde Argentina
Responder

Comentar la versión: 1.0

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios

http://lwp-l.com/s3461