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 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175
| FileReader fr1 = new FileReader( nom_fichier2 );
BufferedReader br1 = new BufferedReader( fr1 );
String ligne1 = null;
//ouverture du deuxieme fichier
//je cree le dernier fichier qui contiendra tout
File fichier_final=new File(nom_fichier3);
if(!fichier_final.createNewFile())
System.out.println("Problème de créaation de fichier");
PrintWriter ecrivain;
while( ( ligne1 = br1.readLine() ) != null )
{
String tab_1 = ligne1;
//affectation de chaque ligne du fichier dans un tableau char pour pouvoir traiter l'information
char tab1[]=new char[tab_1.length()];
for (int i=0; i<tab_1.length();i++)
{
tab1[i]=tab_1.charAt(i);
}
//je stocke ici le numéro de vol
char num_vol[]=new char[3];
num_vol[0]=tab1[18];
num_vol[1]=tab1[19];
num_vol[2]=tab1[20];
//System.out.println(num_vol);
String vol=new String(num_vol);
FileReader fr2 = new FileReader( nom_fichier1 );
BufferedReader br2 = new BufferedReader( fr2 );
String ligne2 = null;
while( ( ligne2 = br2.readLine() ) != null && trouve==false)
{
if(ligne2.startsWith(vol))
{
trouve=true;
ligne2=ligne2.substring(3,ligne2.length());
ligne2=ligne2.trim();//j'elimine les espaces
ligne1=ligne1+ligne2; //7 espaces pr le nombre dheures
//je dois écrire cette ligne dans le dernier fichier
/* char ligne11[]=new char[ligne1.length()];
for (int i=0; i<ligne1.length();i++)
{
ligne11[i]=ligne1.charAt(i);
}*/
if(premierefois==true)//si c est la premiere fois que l'on écrit il faudra mettre au début du fichier CIE AV MV...
{
premierefois=false;
//traitement pour pouvoir écrire directement CIE MV... dans le fichier
char caract[]=new char[caractere.length()];
for (int i=0; i<caractere.length();i++)
{
caract[i]=caractere.charAt(i);
}
ecrivain=new PrintWriter(new BufferedWriter (new FileWriter(nom_fichier3,true)));
ecrivain.println(caract);
ecrivain.println(ligne1);
ecrivain.close();
JOptionPane.showMessageDialog(null,
"Convertion et création du fichier avec succès(NOM_traité.txt) !", "convertion",
JOptionPane.INFORMATION_MESSAGE);
}
else
{
ecrivain=new PrintWriter(new BufferedWriter (new FileWriter(nom_fichier3,true)));
ecrivain.println(ligne1); //on écrit le tableau qui contient les données traitées dans chaque ligne du fichier
ecrivain.close();
}
}
}//fin du while qui parcout le deuxieme fichier
//je remet le booleen a false
trouve=false;
br2.close();
}//fin du while qui parcourt le premier fichier
br1.close();
//j efface ici le premier fichier crée qui ne nous ai plus d aucune utilité
File f = new File ( nom_fichier2 ) ;
boolean success = f. delete () ;
if(!success)
JOptionPane.showMessageDialog(null,
"Impossible d'effacer le fichier portant l'extension _traité", "convertion",
JOptionPane.INFORMATION_MESSAGE);
}catch( IOException e )
{
JOptionPane.showMessageDialog(null,
"Problème inconnue lors de la lecture du fichier", "convertion",
JOptionPane.ERROR_MESSAGE);
e.getMessage();
}finally{
System.out.println("Application terminée correctement");
}
}
finally{
System.out.println("Opération terminée avec succès!");
}
}
} |
Partager