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 :

Charger contenu du fichier dans une textArea?


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2014
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2014
    Messages : 30
    Par défaut Charger contenu du fichier dans une textArea?
    Salut tous!

    j'aimerais charger le contenu d'un fichier dans une textArea.
    quelle fonction utilisée ?
    et comment faire ?

  2. #2
    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
    1) tu lit le fichier (y a tout ce qu'il te faut dans les api java.io pour ça et dans les Reader)
    2) tu met le contenu que tu viens de lire, via setText() dans le textArea.

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2014
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2014
    Messages : 30
    Par défaut
    voilà ce que j'ai fait
    mais rien ne s'affiche dans le textArea
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    		  try
    		  { fis = new FileInputStream("chemin du fichier à lire");
    		     int n; 
    		     while ((n = fis.available())> 0) 
    		     { byte[] b = new byte[n];s
    		        int result = fis.read(b)
    		        if (result == -1) break;
    		        String s = new String(b);
    		        textArea1.setText(s);
    		     }
    		  } catch (Exception err) {;}
    	  }}

  4. #4
    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
    Commence par utiliser un Reader et un BufferedReader plutot que le fileinputstream. Cela te permettra de lire ton fichier ligne par ligne et non pas byte par byte. Ensuite, ton code remplace à chaque boucle le contenu du textArea par les quelques bytes que tu viens de lire. Enfin, available peut être à 0 sans avoir lu tout le fichier. En effet, cela retourne combien de byte peuent être lu sans bloquer l'appel. Souvent cette valeur est à 0 pour signifier que la prochaine lecture attendra que le disque dur lise les données.

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2014
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2014
    Messages : 30
    Par défaut
    même avec ce code ça n'a pas marché
    les lignes s'affichent juste sur le console d'eclipse mais pas dans la zone JtextArea
    plz help!

    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
    FileReader flux= null;
    		 BufferedReader input= null;
    		 String str;
    		       try{  
    		           flux= new FileReader ("Emplacement du fichier");
     
    		          input= new BufferedReader( flux);
     
    		        System.out.println("jmen sors comme un grand !");
     
    		        while((str=input.readLine())!=null)
    		        {
    		          textArea1.setText(str);
    		          }
    		         }catch (IOException e)
    		         {
    		             System.out.println("Impossible d'ouvrir le fichier : " +e.toString());
    		         }
    		      finally{
    		            try {
    		                flux.close();
    		            } catch (IOException ex) {;}
    		            }

  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
    4
    5
    6
    7
    8
    while((str=input.readLine())!=null)
    		        {
    		          textArea1.setText(str);
    		          }
    		         }catch (IOException e)
    		         {
    		             System.out.println("Impossible d'ouvrir le fichier : " +e.toString());
    		         }
    Avec ce code, tu lis chaque ligne. Ensuite, tu met cette ligne dans le textarea1, en remplacement de la ligne précédente. autrement dit

    => Ton textarea ne contiendra jamais qu'une seule ligne
    => Si la dernière ligne que tu lit est vide, ce qui est souvent le cas, ton textare sera vide.

    Il faut que tu concatène toutes les lignes que tu lis, par exemple en utilisant un StringBuilder:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    		        StringBuilder builder = new StringBuilder();
    		        while((str=input.readLine())!=null)
    		        {
     
    		          builder.append(str).append("\n");
    		          }
    		        textArea1.setText(builder.toString());

Discussions similaires

  1. [forms 6i] charger un fichier dans une table avec sqlloader
    Par moneyinthebank dans le forum SQL*Loader
    Réponses: 8
    Dernier message: 29/04/2006, 01h15
  2. [VB6]Lire le contenu d'un fichier dans une listbox
    Par gizmorambo dans le forum VB 6 et antérieur
    Réponses: 24
    Dernier message: 11/04/2006, 12h51
  3. Charger un fichier dans une table
    Par luchot dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 07/02/2006, 17h21
  4. Charger un fichier dans une textarea
    Par boux2 dans le forum Langage
    Réponses: 2
    Dernier message: 28/01/2006, 16h16
  5. Récupérer contenu de fichier dans une variable
    Par peppena dans le forum Linux
    Réponses: 4
    Dernier message: 15/06/2005, 12h50

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