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

EDI et Outils pour Java Discussion :

Lire un fichier txt champ par champ


Sujet :

EDI et Outils pour Java

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2010
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 28
    Points : 19
    Points
    19
    Par défaut Lire un fichier txt champ par champ
    Bonjour,
    j'ai essayer de faire un petit programme, afin de recuperer chaque ligne champ par champ,les champs sont separer par des virgules a partir d'un fichier txt ,dans un tableu multi dimention voici mon programme, il ya un message d'erreur qui est le suivant:
    "java.IOException:stream closed"

    mon programme est le suivant:

    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
    import java.io.BufferedReader; 
    import java.io.FileInputStream; 
    import java.io.InputStream; 
    import java.io.InputStreamReader; 
    import java.io.*; 
     
    public class THANINA
    { 
      public static void main(String[] args)
      { 
        String chaine=""; 
        String champ =""; 
     
        int i=0,nbr=0; 
        String fichier ="d:\\fichier.txt"; 
     
        //lecture du fichier texte 
        try
        { 
          InputStream ips=new FileInputStream(fichier); 
          InputStreamReader ipsr=new InputStreamReader(ips); 
          BufferedReader br=new BufferedReader(ipsr); 
          String ligne; 
          while( ( ligne = br.readLine() ) != null )
          { 
            nbr += nbr; 
     
            String [][]tab = new String[nbr][3]; 
            for(int k=1;k<nbr+1;k++) 
            { 
              for( int j=1;j<ligne.length()+1;j++) 
              { 
                char car =ligne.charAt(j-1); 
                if (car != ',') 
                  champ +=car; 
                else
                { 
                  tab [k][i]=champ; 
                  champ=""; 
                  i++;
                } 
              } 
     
              tab[k][i]=champ; 
              for(i=0;i<3;i++) 
                System.out.println(tab[k][i]+"\t"); 
     
              System.out.println(ligne); 
              chaine+=ligne+"\n"; 
            } 
            br.close(); 
          }
        } 
        catch (Exception e)
        { 
          System.out.println(e.toString()); 
        } 
      } 
    }





    en fete je dois charger c'est enregistrements dans une table qui se trouve dans une base oracle, chaque champs represente une colonne dans la table et chaque ligne reprefente un enregistrement ,j'ai penser a introduire un select dans la boucle de lecture du tableau mais je ne sais pas vraiment comment le faire .
    merci de me repondre

  2. #2
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Points : 7 163
    Points
    7 163
    Par défaut
    Ton "br.close();" est placé à l'intérieur de la boucle while.
    Donc le fichier est fermé après la première ligne.

Discussions similaires

  1. Lire un fichier txt ligne par ligne
    Par storm85 dans le forum Général Python
    Réponses: 20
    Dernier message: 19/10/2010, 22h15
  2. Comment lire un fichier txt ligne par ligne ?
    Par Chikh001 dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 20/11/2007, 10h27
  3. lire un fichier .txt ligne par ligne
    Par 7awela dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 07/06/2007, 18h02
  4. Réponses: 7
    Dernier message: 12/10/2006, 09h44
  5. Lire un fichier txt par http (C sous Linux)
    Par sleg dans le forum Réseau
    Réponses: 4
    Dernier message: 18/10/2005, 12h07

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