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

Entrée/Sortie Java Discussion :

Vérifier l'existence d'un fichier


Sujet :

Entrée/Sortie Java

  1. #1
    Membre confirmé
    Inscrit en
    Mars 2009
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 63
    Par défaut Vérifier l'existence d'un fichier
    Bonjour et merci bien pour votre aide future,

    Donc, voila mon pb me parait un peu simple mais j'ai pas trouvé une solution.
    Bon, je possedes 2 fichiers "fich1" et "fich2", et je vais executé mon programme java sur l'un de ces deux fichier.
    Voila l'algorithme de mon programme en general:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Si (fich1 existe) or (fich2 existe) alors
    {
           // execution de mon code java
    }
    Bref, j'ai besoin d'une instruction qui permet de faire la vérification de l'existance de l'un de ces fichier.

    Merci bien encore.

  2. #2
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    Il suffit simplement d'utiliser la méthode exists :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    File f1 = new File("Fichier1"); 
    File f2 = new File("Fichier 2"); 
     
    if(f1.exists() || f2.exists()){
        //...
    }

  3. #3
    Membre confirmé
    Inscrit en
    Mars 2009
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 63
    Par défaut
    Merci beaucoup pour vous,

    Ok, c'est bon la reponse que vous avez me l'envoyez a repondu à une partie de mon programme, donc merci beaucoup.
    Mais je dois aussi exploiter le fichier existant dans mon programme java par exemple dans un Inputstrem comme le suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    InputStream	inStream = new FileInputStream(le fichier existant);
    Donc comment je peux exploiter le fichier que j'ai deja faire la vérification de son existance?

    Merci encore, car tu m'as aidé beacoup .

  4. #4
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    Pour plus d'informations, je t'invite à consulter la FAQ ou alors ce tutoriel d'introduction à l'IO avec Java

  5. #5
    Membre confirmé
    Inscrit en
    Mars 2009
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 63
    Par défaut
    Merci pour les deux liens que vous avez me l'envoyez j'ai pris plusieurs nouveaux informtions . Merci encore.

    Alors j'ai utiliser des blocs "try" et "catch", pour resoudre mon pb mais tjs j'obtien des erreurs telque cannot find symbole variable inStream par exemple, lorsque je quitte le "if".

    Donc, comment je peux corriger cette erreur?
    C'est à dire je veux utiliser le fichier existant dans un InputSteam mais lorsque je sort du "if" je vais utiliser ce InputStream dans le rest du programme.
    Le pb donc cette erreur et voila 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
     
    try 
     { 	
        File f1 = new File("fich1"); 
        File f2 = new File("fich2"); 
        /* Vérifier l'existance l'un des deux fichier*/
         if(f1.exists())
         {
            InputStream	inStream = new FileInputStream(f1);
         }
         else
         {
            if(f2.exists())
             {
    	        InputStream	inStream = new FileInputStream(f2);	
             }			
         }
     
       /*le reste de mon code je vais utiliser le variable "instream"
    			 ......*/
     
     
    }
    Merci encore.

  6. #6
    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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
         {
            InputStream	inStream = new FileInputStream(f1);
         }
    L'inputstream ainsi déclaré n'a de portée que dans le if (la portée des variables et toujours celle du bloc qui entoure la déclaration). Des que tu sort du if, cette variable n'existe plus. Déclar ton InputStream en dehord du if, puis seulement, dans le if, donne lui une valeur.

  7. #7
    Membre confirmé
    Inscrit en
    Mars 2009
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 63
    Par défaut
    J'ai fait ce que vous avez me demandé mais voila il me donne l'erreur suivante:
    variable inStrem might not have been inisialized

    Donc qu'est ce que je dois faire?
    Merci pour vous.

  8. #8
    Membre Expert
    Avatar de X-plode
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2005
    Messages
    682
    Détails du profil
    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2005
    Messages : 682
    Par défaut
    Bonsoir,

    Ceci est normal :
    J'ai fait ce que vous avez me demandé mais voila il me donne l'erreur suivante:
    variable inStrem might not have been inisialized
    Tu fais ça dans un code block.
    Fais ton
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    InputStream	inStream = new FileInputStream(f1);
    En dehors de ton if et ça marchera.

  9. #9
    Membre confirmé
    Inscrit en
    Mars 2009
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 63
    Par défaut
    Mais j'ai besoin de faire une verification pour obtenir le InStream associer au fichier existant, Voila 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
     
    File f1 = new File("fich1"); 
    File f2 = new File("fich2"); 
    InputStream inStream;
     
    /* Vérifier l'existance du fichier*/
     
    if(f1.exists())
      {
           inStream = new FileInputStream(f1);
      }
    else
      {
     
         if(f2.exists())
          {
    	inStream = new FileInputStream(f2);	
          }			
    }
    Donc, j'ai fait la declaration en dehors du bloc "if" mais l'affectation de valeur à l'interieur.
    Merci beaucoup, si vous pouvez m'expliquer mieux
    Merci encore.

  10. #10
    Membre Expert
    Avatar de X-plode
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2005
    Messages
    682
    Détails du profil
    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2005
    Messages : 682
    Par défaut
    Avec les deux codes ( déclaration à l'extérieur du block de la variable de référence et de l'affection du type objet dans le block / déclaration de la variable de référence de l'objet dans le block), ça te génère une erreur ?

  11. #11
    Membre confirmé
    Inscrit en
    Mars 2009
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 63
    Par défaut
    Oui l'erreur:variable inStrem might not have been inisialized
    est généré, apres le bloc "if".
    Donc, j'ai pas compris qu'est ce que je dois faire!!!!!!!!!!!!!!!!!!!!!!

  12. #12
    Membre Expert
    Homme Profil pro
    Dév. Java & C#
    Inscrit en
    Octobre 2002
    Messages
    1 414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Dév. Java & C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 414
    Par défaut
    Bonjour,

    Il faut être méthodique...

    Que se passe-t-il si f1 et f2 n'existent pas? Ta variable inStream n'est pas initialisée. Donc on dit: "Merci, le compilateur de m'avoir avertit de cet potentiel bug".

    Il suffit d'initialiser inStream à null.

    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
    File f1 = new File("fich1"); 
    File f2 = new File("fich2"); 
    InputStream inStream = null;
     
    /* Vérifier l'existance du fichier*/
    if (f1.exists()) {
           inStream = new FileInputStream(f1);
    }
    else {			
         if(f2.exists()){
    	inStream = new FileInputStream(f2);	
          }			
    }
    if (inStream != null) {
      /* Mon traitement de inStream */
    }

Discussions similaires

  1. [JSP] Vérifier l'existence d'un fichier
    Par leminipouce dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 22/02/2008, 14h09
  2. Vérifier l'existence d'un fichier word
    Par pouii dans le forum VBA Access
    Réponses: 2
    Dernier message: 24/09/2007, 16h47
  3. [Fait]Comment vérifier l'existence d'un fichier (FSO)
    Par Jean Luc Ravenne dans le forum Contribuez
    Réponses: 11
    Dernier message: 14/09/2007, 21h37
  4. [FTP] Vérifier l'existence d'un fichier !
    Par Invité dans le forum Langage
    Réponses: 1
    Dernier message: 19/02/2006, 12h09
  5. Réponses: 3
    Dernier message: 24/06/2004, 11h23

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