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

AWT/Swing Java Discussion :

afficher dans un jscrollpane le contenu d'un fichier .txt


Sujet :

AWT/Swing Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 251
    Points : 121
    Points
    121
    Par défaut afficher dans un jscrollpane le contenu d'un fichier .txt
    Bonjour.
    j'ai ecrit une methode qui en principe devrait lire le contenu de mon fichier .txt, et le stocker dans un jtextarea.
    le probleme est que quand j'affiche mon jtextarea dans le scrollpane, il s'affiche tout vide.(sans le texte contenu dans le fichier).
    voilà le bout de code qui appelle l'affichage.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    jScrollPane2.getViewport().setView(readFileCheck(file));
    .

    et d'autre part, voilà le code qui est censé recuperer le contenu de mon fichier.
    peut etre c'est lui qui a un probleme.
    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
    	public static JTextArea readFileCheck(String fichier){
    		JTextArea textArea = new JTextArea();
    		try
    		{
    			FileInputStream fis = new FileInputStream(fichier);
    			int n;
    			while((n = fis.available())>0)
    			{byte[] b = new byte[n];
    			int result = fis.read(b);
    			if(result == -1)break;
    			String s = new String(b);
    			textArea.setText(s);
     
    			}
    		}catch(Exception err){}
    		return textArea;
    	}
    merci d'avance.

  2. #2
    Membre actif

    Étudiant
    Inscrit en
    Mai 2006
    Messages
    200
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2006
    Messages : 200
    Points : 276
    Points
    276
    Par défaut
    Bonjour,

    Premièrement ta boucle de lecture du fichier n'est pas super propre je trouve :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    byte[] b = new byte[1024];
    while ((fis.read(b)) != -1) {
    	String s = new String(b);
    	...
    }
    Deuxièmement, je te conseil d'utiliser la classe BufferedReader et sa méthode :

    qui te permettra de lire ton fichier texte ligne par ligne.

    Troisièmement et pour finir , pour ce qui est de ton JTextArea tu renseignes mal son contenu. En effet, à chaque boucle tu réécrit par dessus ce que tu as écrit la fois d'avant.

    Soit tu fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    // dans ta boucle 
    String s = new String(b);
    textArea.append(s);
    ou bien tu fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    // avant ta boucle
    StringBuffer buffer = new StringBuffer();
     
    // dans ta boucle
    buffer.append(s);
     
    // après ta boucle
    textArea.setText(buffer.toString());
    Voilà.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 251
    Points : 121
    Points
    121
    Par défaut
    merci pour tes conseils.
    j'en tiendrais compte pour une amélioration.
    mais le probleme ne venait pas de là.
    rien ne s'affichait, parce que en creant mon fichier texte, je ne lui avais pas donné l'extension .txt.
    maintenant, tout marche bien.
    bonne journée à toi.

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 07/03/2013, 17h38
  2. Réponses: 3
    Dernier message: 16/12/2010, 18h33
  3. [XL-2003] Comment afficher dans un label le contenu d'une cellule
    Par deamonRav dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 23/03/2010, 15h30
  4. Réponses: 4
    Dernier message: 27/07/2005, 11h51

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