Bonjour,
J'ai comme objectif de récupérer le contenu d'un fichier texte et de le convertir en pdf avec iText. Cependant toutes les lignes ne sont pas à prendre en compte et seulement le début de ligne permet de les différencier (OBJET=CONTROL).
J'aimerai donc savoir comment récupérer seulement ces lignes avec mon code actuel, il les identifie toutes comme différentes...
Cordialement,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 import java.io.*; import java.io.IOException; import com.itextpdf.text.*; import com.itextpdf.text.pdf.PdfWriter; public class ParserDef { /** * Nom du document PDF généré non signé */ static String fname = "/home/simedia/Bureau/Stage Clément/Projet Java/TestParserDef.pdf" ; static String chemin = "/home/simedia/Bureau/Stage Clément/Projet Java/DDL001.def"; /** * Création d'un simple document PDF "Hello World" */ public static void ConvertDef() { // Creation du document Document document = new Document(); try { // Creation du "writer" vers le doc // directement vers un fichier PdfWriter.getInstance(document, new FileOutputStream(fname)); // Ouverture du document //document.open(); // Ecriture des données du fichier texte en pdf try { // Création du flux bufférisé sur un FileReader, immédiatement suivi par un // try/finally, ce qui permet de ne fermer le flux QUE s'il le reader // est correctement instancié (évite les NullPointerException) BufferedReader buff = new BufferedReader(new FileReader(chemin)); //Récupère le nombre de ligne du fichier try { String ligne; // Lecture du fichier ligne par ligne. Cette boucle se termine // quand la méthode retourne la valeur null. while ((ligne = buff.readLine()) != null) { if (buff.readLine().equals("OBJET=CONTROL")) { System.out.println(ligne); document.add(new Paragraph(ligne)); } else { System.out.println(ligne +" FAUX"); } } //System.out.println(ligne); //faites ici votre traitement } finally { // dans tous les cas, on ferme nos flux buff.close(); } } catch (IOException ioe) { // erreur de fermeture des flux System.out.println("Erreur --" + ioe.toString()); } } catch (DocumentException de) { System.err.println(de.getMessage()); } catch (IOException ioe) { System.err.println(ioe.getMessage()); } //Fermeture du document //document.close(); } }
Clément G.
Partager