Gestion de Fichier

jsand094 - 29 sept. 2012 à 20:47
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 - 1 oct. 2012 à 11:03
Bonjour,
Ce sont des acteurs qui ont joué dans des films. Quand vous l'exécuterez, vous verrez que :

- le fichier d' « entree » se presente comme suite :
Film 1 : Hugues Joel Daniel ... ... ..
Film 2 : Gérémie Émilie Constance ... ...
Film 3 : Fabien Hugues Kacou ....


- Le fichier de sortie devrait se presenter comme suite :
Hugues : Film 1 Film 3 ...
Joel : Film 1 ...

Rien ne s'affiche dans le fichier de sortie

   
package javaapplication3;

/**
 * @author sandé
 */
    import java.io.*;
    import java.util.Scanner;
    //import java.util.Vector;

public class JavaApplication3 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) throws IOException {
        // TODO code application logic here
        File e = new File ("entree.txt");
        File s = new File ("sortie.txt");
        Scanner sc = new Scanner(System.in);   // entree manuelle
       // Scanner se = new Scanner(e);         // recherche dans fichier entree
        boolean ajout = true;
        PrintWriter pw1 = new PrintWriter(new BufferedWriter(new FileWriter(e, ajout))); // ecriture dans fichier e
        PrintWriter pw2 = new PrintWriter(new BufferedWriter(new FileWriter(s, ajout))); // reorganisation de donnee et report dans fichier s
        int repFilm;
        int repActeur;
        //Vector  vact = new Vector();
        String Matrice[][] = new String [50][50];
        //-------------------- entree -----------------------------------------
  try{  
        int i;
        int j;
        String nom;
        System.out.println("Combien de films voulez vous enregistrer ? ");
        repFilm = sc.nextInt();
        
        String Film[];                       
        for(i=0; i<repFilm; i++){
            System.out.println("\nFilm "+(i+1)+" : "+
                        "combien d'acteurs ?");
                        repActeur = sc.nextInt();                                 
                        Film = new String[(repActeur+1)];
                        Film[0] = "Film "+(i+1)+" : ";    //entree 0
                        Matrice[i][0]= Film[0];
                               
               for(j=1; j<=repActeur; j++){
                   System.out.println("Acteur "+j+" :");
                   nom = sc.next();
                   Film[j] = nom;                               //entree acteur
                 //  vact.;
                   Matrice[i][j]= nom;
               }
                    for(j=0; j<=repActeur; j++){
                        System.out.print(Film[j]+" ");      // conception du fichier entree
                        pw1.print(Film[j]+" ");
                    }
                        pw1.println();
                        
         }              pw1.close();
                           // on fini les enregistrement du fichier d'entree avant de pouvoir creer le fichier de sortie
                      
    }catch(Exception ex){
            System.out.println("Probleme avec le fichier d'entree...");
    }
 //---------------------- sortie -----------------------------------------------
        
            try{   
                    String tab[] = new String[49];
                    String report;
                    int k=0;
                    
                                  //vrai pour chaque ligne
                        for(int l=1; l<=49; l++){           // pour une ligne particulier
                            tab[(l-1)] = Matrice[k][l];
                                report = tab[(l-1)]+" : ";
                                for(k=0; k<50; k++){
                                    if(Matrice[k][l].matches(tab[l-1])){
                                        report = report+" Film "+(k+1)+" ";
                                    }
                                }
                                   pw2.print(report);
                        }                          
                                   pw2.close();
                }catch(Exception ey){
                    System.out.println("Probleme avec le fichier de sortie...");
                }
    } 
}

Qui aurait une meilleure suggestion ? ou pourquoi le code ne marche pas ?
Merci d'avance pour vos reponses Jsande

1 réponse

cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
1 oct. 2012 à 11:03
0
Rejoignez-nous