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

Java Discussion :

Lister un répertoire


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 24
    Par défaut Lister un répertoire
    Bonjour,

    Je cherche a lister tout les fichiers d'un repertoire pour les ouvrirs et faire une recherche dedans mais j'ai une erreur java.lang.NullPointerException je comprends pas d'ou elle vient :
    Ps : j'enregistre à chaque fois dans le meme fichier test mais c'est pas un probleme pour l'instant.

    Merci d'avance;

    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
     
    import java.io.*;
     
    public class Test
    {
     
     
            public static void main(String[] args) throws IOException
    	{
     
    		File rep = new File(".");
    		String[] listefichiers=rep.list();
    		for(int i=0;i<listefichiers.length;i++)
    		{
     
    		fic(listefichiers[i]);
    		}
     
     
    	}
    		static void fic(String chemin) throws IOException
    		{
    	        BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(new File(chemin)), "iso-8859-1"));
    	        BufferedWriter out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(new File("test.txt")), "iso-8859-1"));
     
    	        String name = in.readLine();
    	        while(!(name.contains("<tr><td class=\"clsLabel\" width=\"600px\"><b><i>")))
    	        {
    			name = in.readLine();			
    	        }
    		out.write(name);
    	       while(!(name.contains("</b></font><br>")))
    		{
    			name = in.readLine();
    			out.write(name);
    		}
     
     
    	        in.close();
    	        out.close();
     
    		}
     
     
    }

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 585
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 585
    Par défaut
    Bonjour,

    la NullPointerException te le dit, d'où elle vient. Il suffit de regarder à la ligne indiquée.

    Mais bon, c'est certainement sur while(!(name.contains("<tr><td class=\"clsLabel\" width=\"600px\"><b><i>"))). La variable name va fatalement finir par être null.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 24
    Par défaut
    Merci pour ta réponse, mais je ne comprends pas pourquoi la variable va finir par être null ? Tous mes fichiers (1200) dans le dossier sont construits de la même façon et il ont tous une ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <tr><td class=\"clsLabel\" width=\"600px\"><b><i>

  4. #4
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2012
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2012
    Messages : 18
    Par défaut
    Pour ça :

    readLine
    public String readLine()
    throws IOExceptionReads a line of text. A line is considered to be terminated by any one of a line feed ('\n'), a carriage return ('\r'), or a carriage return followed immediately by a linefeed.

    Returns:
    A String containing the contents of the line, not including any line-termination characters, or null if the end of the stream has been reached Throws:
    IOException - If an I/O error occurs

  5. #5
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 585
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 585
    Par défaut
    En même temps, s'ils avaient vraiment tous la ligne en question, du coup on tomberait sur cette ligne avant de tomber sur null.

    Mais quelles sont les chances que ce soit le cas ? C'est évident... -_-°
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. Lister un répertoire Web distant
    Par antony dans le forum Langage
    Réponses: 4
    Dernier message: 07/03/2006, 12h02
  2. Lister les répertoires d'un répertoire
    Par Faith's Fall dans le forum C++Builder
    Réponses: 7
    Dernier message: 22/02/2006, 11h01
  3. lister un répertoire...
    Par airod dans le forum Général Python
    Réponses: 2
    Dernier message: 09/01/2006, 10h29
  4. Lister un répertoire
    Par ArkAng3 dans le forum MFC
    Réponses: 7
    Dernier message: 29/09/2005, 13h13
  5. Comment copier et lister un répertoire ?
    Par pepito62 dans le forum C++Builder
    Réponses: 2
    Dernier message: 03/05/2005, 19h14

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