/** * cette fonction va lire le contenu d'un fichier * @param nomFichier : nom du fichier en entree * @return resultat : liste des lignes */ public static List<String> lireFichier(String nomFichier){ BufferedReader fluxEntree=null; String ligneLue; List<String> lignes = new ArrayList<String>(); try{ fluxEntree = new BufferedReader(new FileReader(nomFichier)); ligneLue = fluxEntree.readLine(); while(ligneLue!=null){ lignes.add(ligneLue); ligneLue = fluxEntree.readLine(); } } catch(IOException exc){ exc.printStackTrace(); } try{ fluxEntree.close(); } catch(IOException e){ e.printStackTrace(); } return lignes; }
/** * Ce procédure écrit dans le fichier les lignes de la liste * @param nomFichier : nom du fichier dans lequel écrire * @param lignes : liste des lignes à écrire */ public static void ecrireFichier(String nomFichier, List<String> lignes){ Writer fluxSortie=null; try{ fluxSortie = new PrintWriter(new BufferedWriter(new FileWriter( nomFichier))); for(int i=0;i<lignes.size()-1;i++){ fluxSortie.write(lignes.get(i)+"\n"); } fluxSortie.write(lignes.get(lignes.size()-1)); } catch(IOException exc){ exc.printStackTrace(); } try{ fluxSortie.close(); } catch(IOException e){ e.printStackTrace(); } }
List<String> lignes = lireFichier(tonFichier); while(lignes.size()>0){ List<String> cinqLignes = new ArrayList<String>(); for(int i=0; i<Math.min(liste.size(), 5); i++){ cinqLignes.add(lignes.remove(i)); } ecrireFichier(nomFichier, cinqLignes); }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionfor(int i=0; i<Math.min(lignes.size(), 5); i++){ cinqLignes.add(lignes.remove(0));// C'est 0 et pas i }
public static void main(String[] args) { String fichiersource ="C:/JavaHome/workspace/GestionDesDTS/FichierEntré/fichierDentree.txt"; List<String> lignes = lireFichier(fichiersource); int i=1; while(lignes.size()>0){ List<String> cinqLignes = new ArrayList<String>(); for(int i=0; i<Math.min(lignes.size(), 5); i++){ cinqLignes.add(lignes.remove(i)); } String fichierSortie =("C:/JavaHome/workspace/GestionDesDTS/FichierSortie/Fichier_"+i+".txt"); ecrireFichier(fichierSortie, cinqLignes); i++; } }