Bonjour à tous,me revoila
j ai une application en JAVA qui doit ecrire une ligne dans un fichier à partir de deux lignes de deux fichiers différents,en gros j ai:

zae rt 345 536546 EZRR (du fichier 1)
cvb uy 879 54657 QSD (du fichier 2)

Et le résultat attendu c'est

zae rt 345 536546 EZRR cvb uy 879 54657 QSD (dans un fichier 3 nouvellement créé).
Sous linux ça a marché sans problème,mais quand j ai demarré mon application sous windows il y avait un espece ENORME entre la premiere et la deuxieme ligne!!!J ai beau eu cherché dans le code,je n'ai rien trouvé!!

Quelqu'un a t il une idée?
Voici mon code au cas où:
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
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!");
    		}	
 
    		}
 
 
 
        }
Je precise que sous linux ca marche(mais malheuresment pour moi les utilisateurs de cette application ne fonctionnent que sous windows)