IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

[Debutant]Lecture de fichier


Sujet :

avec Java

  1. #1
    Membre très actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2019
    Messages
    173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2019
    Messages : 173
    Par défaut [Debutant]Lecture de fichier
    Hello !

    Alors voila j'ai commencé ce tp d'initiation au java à l'école sur Linux et là j'essaye de le finir chez moi en installant eclipse sur Windows.

    voici mon code :

    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
    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileReader;
    import java.util.ArrayList;
     
    public class Mainn {
     
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
     
    		try{
    			File file = new File("test.txt");
    			System.out.println(file.getAbsolutePath());
     
    			FileReader flux= new FileReader(file.getAbsolutePath()); 
    			BufferedReader lecture=new BufferedReader(flux);
    			String ligne;
    			ArrayList<Player> player = new ArrayList<Player>(); 
    			while ((ligne=lecture.readLine())!=null){
     
    				String[] obj = ligne.split(":");
    				String name = obj[1];
    				int date = Integer.parseInt(obj[2]);
    				int nbParties = Integer.parseInt(obj[3]);
    				int gagnees = Integer.parseInt(obj[4]);
     
    				if(obj[0].equals("OddPlayer"))
    				{
    					player.add(new OddPlayer(name,date,nbParties,gagnees));
    				}
    				if(obj[0].equals("Player"))
    				{
    					player.add(new Player(name,date,nbParties,gagnees));
    				}
    				if(obj[0].equals("DiceRoller"))
    				{
    					player.add(new DiceRoller(name,date,nbParties,gagnees));
    				}
    			}
     
    			 System.out.println("Joueur Total"+ Player.getNbJoueur() + ", Joueurs de Dés :" + DiceRoller.getNbJoueur() +"Joueurs étranges" +OddPlayer.getNbJoueur());
    			for(int i=0; i<player.size();i++)
    			{
    				if(player.get(i).getNickName().equals("Homer"))
    					{
    					player.remove(i);
    					};
     
    			}
    			System.gc();
    			System.out.println("Joueur Total"+ Player.getNbJoueur());
     
     
     
    			lecture.close(); 
    			}		
    			catch (Exception e){
    				System.out.println("File error");
     
    	}
    	}
     
    }
    La seule chose qui à changé c'est le chemin du fichier et pourtant je me tape un catch file error....
    J'ai essayé de lancer Eclipse en administrateur, de changer le fichier de place etc; rien impossible.... Si quelqu'un à une solution...

  2. #2
    Membre Expert Avatar de jeffray03
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2008
    Messages
    1 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 501
    Par défaut
    salut,
    peux tu nous mettre l´erreur affichée ?

    pour qu´on puisse comprendre ce qui ne marche pas.

    Eric

  3. #3
    Membre très actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2019
    Messages
    173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2019
    Messages : 173
    Par défaut
    Voilà ce que le code renvoie :

    "C:\Users\galec\eclipse-workspace\TP_2\test.txt
    File error"

    Il renvoie l'instruction du catch...
    Il arrive pas à accéder au fichier... pourtant ça fonctionnait très bien hier...

  4. #4
    Membre Expert Avatar de jeffray03
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2008
    Messages
    1 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 501
    Par défaut
    salut,
    est ce que ton fichier est placée a la racine de ton Application?
    peux-tu faire une capture d´ecran pour nous montrer la structure de ton projet?
    et met ceci dans ton catch :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.out.println("File error " + e.getMessage());
    et donnes nous ce qui en ressort.
    ensuite je viens de remarquer quelque chose , tu commences ton index avec 1, fais plustot comme ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    String[] obj = ligne.split(":");
    				String name = obj[0];
    				int date = Integer.parseInt(obj[1]);
    				int nbParties = Integer.parseInt(obj[2]);
    				int gagnees = Integer.parseInt(obj[3]);
    si ton fichier test.txt contient ceci :
    Eric

  5. #5
    Membre très actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2019
    Messages
    173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2019
    Messages : 173
    Par défaut
    Effectivement le fichier est introuvable...

    Nom : capture.png
Affichages : 73
Taille : 99,1 Ko

  6. #6
    Membre Expert Avatar de jeffray03
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2008
    Messages
    1 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 501
    Par défaut
    salut,
    mets ton fichier a la racine de TP2,
    juste en dessous et non dans ton repertoire src.


    Eric

  7. #7
    Membre très actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2019
    Messages
    173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2019
    Messages : 173
    Par défaut
    Ils ne le sont pas ^^", si je ferme le src on peu voir qu'ils sont bien dans la racine de TP2...
    Pour ce qui est de l'index c'est bon, la première donnée dans mes chaines me sert pour une autre fonction.

    C'est juste un problème de fichier... je ne comprends vraiment pas pour le coup...

  8. #8
    Membre Expert Avatar de jeffray03
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2008
    Messages
    1 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 501
    Par défaut
    salut
    regardes ce que je veux dire:
    Nom : test.PNG
Affichages : 63
Taille : 4,2 Ko

    eric

  9. #9
    Membre très actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2019
    Messages
    173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2019
    Messages : 173
    Par défaut
    C'est déjà le cas, mes fichiers sont dans la racine de TP2.

  10. #10
    Membre Expert Avatar de jeffray03
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2008
    Messages
    1 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 501
    Par défaut
    salut,
    alors, il devrait afficher une autre erreur,
    que celle du fichier non trouvé.
    Si cela ne marche pas, fais un clean de ton Projet.

    Eric

  11. #11
    Membre très actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2019
    Messages
    173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2019
    Messages : 173
    Par défaut
    Il me renvoit "File Error + 4" donc l'erreur se nomme 4. Je continu de chercher, merci pour ton aide

  12. #12
    Membre Expert Avatar de jeffray03
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2008
    Messages
    1 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 501
    Par défaut
    salut,
    c´est parceque tu fais ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    int gagnees = Integer.parseInt(obj[4]);
    alors que ton fichier test n´a que 4 elements par ligne , est ce vrai?

    Eric

  13. #13
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Juste deux remarques

    Une bonne habitude, c'est d'afficher tes erreurs complètes dans les catchs, ça aide fortement à débugger les problèmes, toute l'information et les lignes concernées sont dedans, il suffit de faire, par exemple:



    Ensuite, vu que tu débute, ne prends pas cette très mauvaise habitude de faire un
    , n'attrape que les Exception que tu t'attends à pouvoir gérer. Par exemple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    catch(IOException) {
    // Traiter ici le cas d'une erreur d'entrée sortie dans le fichier
    }

  14. #14
    Membre très actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2019
    Messages
    173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2019
    Messages : 173
    Par défaut
    Pour ce qui est du int gagnees = Integer.parseInt(obj[4]); ici je prends juste le 4 ème éléments du Split, je suis dans ma boucle qui s'arrête lorsqu'il y a plus de lignes, mon fichier comporte 5 lignes.
    Il y a ceci dans mon fichier :

    OddPlayer:Asterix:2000:1:1
    OddPlayer:Obelix:1999:1:1
    OddPlayer:Rustix:1980:5:1
    Player:Homer:1989:3:1
    DiceRoller:Marge:1989:4:1

    Merci pour vos conseils concernant mon problème, ça ne peut pas venir du fait que j'ai commencé mon projet sur Linux quand même ? C'est vraiment la première fois que je bloque sur un problème aussi c** :'(

    EDIT: j'ai chargé mon projet sur un autre pc, il fonctionne....
    Peut être une mauvaise installe d'eclipse sur mon pc ? .... Désolé de vous avoir fait perde votre temps ^^"
    Merci pour votre aide en tout cas

  15. #15
    Membre Expert Avatar de jeffray03
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2008
    Messages
    1 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 501
    Par défaut
    salut,
    il y avait un probleme ici:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    OddPlayer:Obelix:1999:1
    avec seulement 4 elements au lieu de 5.

    Eric

  16. #16
    Membre très actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2019
    Messages
    173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2019
    Messages : 173
    Par défaut
    Exact ! :O je me sens bête :'(

    Merci pour tout c'est bon ça fonctionne bien sur mon pc maintenant

    Le problème est tout le temps entre l'écran et le dossier de la chaise...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 7
    Dernier message: 19/04/2016, 15h09
  2. [Debutant] Lecture de fichier txt
    Par vbbarent dans le forum Débuter
    Réponses: 11
    Dernier message: 06/05/2008, 11h13
  3. [debutant] lecture de fichier (encore)
    Par SPACHFR dans le forum Débuter
    Réponses: 20
    Dernier message: 24/05/2007, 17h43
  4. [debutant] lecture de fichier
    Par SPACHFR dans le forum Débuter
    Réponses: 3
    Dernier message: 23/05/2007, 17h50
  5. [debutant] lecture de fichier
    Par cladsam dans le forum Caml
    Réponses: 10
    Dernier message: 06/05/2007, 17h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo