Débutante en Java et erreurs incomprises

Débutante en Java et erreurs incomprises - Java - Programmation

Marsh Posté le 10-07-2007 à 17:27:57    

Bonjour à tous,
 
comme indiqué je débute en java et j'ai quelques petits soucis. Mon but est de faire une méthode qui lit un fichier texte du type:
x1            y1             z1            x2          y2           z2            truc1   id truc2
11.240032 -18.876180 22.430771 0.019752 -0.026701 -0.999448 vector 1 -meas-  
le séparateur est l'espace.
 
J'ai fait un petit programme mais il ne compile pas sous eclipse... Je désire mettre tous mes x1 dans un vecteur, tous mes x2 dans un autre etc..et les afficher pour voir si ça marche à la fin.
 
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.StringTokenizer;
import java.util.Vector;
 
 
public class Fichiers {
 
 /**
  * @param args
  */
 //Empty constructor
 Fichiers (){
 }
 //Méthode qui prend en paramètre une string qui donne le nom et chemin du fichier
 public void LireFichierP(String nomfichier) throws IOException {
 
   try {
    //On ouvre le buffer
    BufferedReader texte = new BufferedReader (new FileReader("nomfichier" )) ;
   
    Vector<Double> coordx1 = new Vector<Double>();
    Vector<Double> coordx2 = new Vector<Double>();
    Vector<Double> coordy1 = new Vector<Double>();
    Vector<Double> coordy2 = new Vector<Double>();
    Vector<Double> coordz1 = new Vector<Double>();
    Vector<Double> coordz2 = new Vector<Double>();
     Vector<String> truc1 = new Vector<String>();
     Vector<Integer> ids = new Vector<Integer>();
     Vector<String> truc2 = new Vector<String>();
     
     StringTokenizer st = new StringTokenizer(texte.readLine()," " );
   
      while (st != null){
       String str = st.nextToken();
       //On remplit les vecteurs au fur et a mesure
       coordx1.addElement(Double.valueOf(str));
       coordy1.addElement(Double.valueOf(str));
       coordz1.addElement(Double.valueOf(str));
       coordx2.addElement(Double.valueOf(str));
       coordy2.addElement(Double.valueOf(str));
       coordz2.addElement(Double.valueOf(str));
       truc1.addElement(str);
       ids.addElement(Integer.parseInt(str));
       truc2.addElement(str);
      }
     //On ferme le buffer
    texte.close();
    }  
    catch (Exception e) {}  
  }
 
  public void main (String[] args){
   String nomfichier = "C://u.txt";
   //du type 11.240032 -18.876180 22.430771 0.019752 -0.026701 -0.999448 vector 1 -meas-
   Fichiers poly = new Fichiers ();
   poly.LireFichierP(nomfichier);
   //System.out.println(coordx1);
   //System.out.println("vecteurs d'identifiants"+ids);
  }
}
 
 
Merci d'avance à celui ou celle qui pourra me dire se qui ne va pas. :p

Reply

Marsh Posté le 10-07-2007 à 17:27:57   

Reply

Marsh Posté le 10-07-2007 à 17:45:59    

Merci de mettre les balises code et de nous donner l'erreur que tu as sous eclipse.

Reply

Marsh Posté le 10-07-2007 à 17:48:43    

Wah nom de dieu [:pingouino] Ba bon courage à ceux qui vont vouloir aider la dame au pseudo si fleuri [:joce]


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
Reply

Marsh Posté le 10-07-2007 à 17:56:53    

déjà, ptet que si tu catchais l'exception du bon type, tu aurais une meilleure idée du problème, au lieu de catcher bêtement la superclasse Exception sans aucun traitement en sus [:kiki]

Reply

Marsh Posté le 10-07-2007 à 18:04:35    

réponse:

Spoiler :

DTC [:pingouino]


j'ai bon? [:dawa]

Reply

Marsh Posté le 10-07-2007 à 18:12:01    

comment vous avez deviné que c'était une meuf ? [:pingouino]

 

edit : ok je lirais mieux le titre du topic la prochaine fois [:petrus75]


Message édité par Loom the Gloom le 10-07-2007 à 18:12:22

---------------
Music|Market|Feed|Loom|DVD
Reply

Marsh Posté le 10-07-2007 à 18:25:33    

Tain le débarquement de geek [:petrus75]


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
Reply

Marsh Posté le 10-07-2007 à 18:30:17    

Shinuza a écrit :

Tain le débarquement de geeks stars :sol:


Reply

Marsh Posté le 10-07-2007 à 18:36:56    

tu does ?

Reply

Marsh Posté le 10-07-2007 à 19:11:37    

Hum merci je savais déjà que j'étais une quiche en java.  
Effectivement l'erreur dans eclipse est "not handle exception" dans le main.
Et je n'ai pas spoiler le code j'ai des erreurs toute seule

Reply

Marsh Posté le 10-07-2007 à 19:11:37   

Reply

Marsh Posté le 10-07-2007 à 19:25:22    

OK, alors...

Code :
  1. public void LireFichierP(String nomfichier) throws IOException
 

et

 
Code :
  1. poly.LireFichierP(nomfichier);
 

T'as pas l'impression d'oublier un truc ? (je t'aide : ça a à voir avec les 2 derniers mots de la signature de ta méthode)


Message édité par Taiche le 10-07-2007 à 19:26:01

---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
Reply

Marsh Posté le 10-07-2007 à 20:32:14    

oui j'ai corrigé quelques erreurs déjà. Mon fichier marche sauf que maintenan je voudrais qu'il me sorte les vecteurs pour que je vois ce qu'il y a dedans...
j'ai corrigé :
 ---------------------------------
catch (IOException e)  
    {
     String test = e.toString();
     
    }  
------------------------
et ceci aussi:
--------------------------
BufferedReader texte = new BufferedReader (new FileReader(nomfichier))  
---------------------------
j'avais mis des guillemets...
 
Si quelqu'un a une idée pour que je vois mes vecteurs il est le bienvenue
 
 

Reply

Marsh Posté le 10-07-2007 à 20:36:44    

En fait j'ai casi tout refait
code:
 public void LireFichierP(String nomfichier)  {
   
  Vector<Double> coordx1 = new Vector<Double>();
  Vector<Double> coordx2 = new Vector<Double>();
  Vector<Double> coordy1 = new Vector<Double>();
  Vector<Double> coordy2 = new Vector<Double>();
  Vector<Double> coordz1 = new Vector<Double>();
  Vector<Double> coordz2 = new Vector<Double>();
   Vector<String> truc1 = new Vector<String>();
   Vector<Integer> ids = new Vector<Integer>();
   Vector<String> truc2 = new Vector<String>();
 
   try {
    //On ouvre le buffer
    BufferedReader texte = new BufferedReader (new FileReader(nomfichier)) ;
     
     
     //Compteur de lignes
    int i = 0;
    String ligne = texte.readLine() ;
    while (ligne != null) {
     ligne = texte.readLine() ;
     i++ ;
    }
    texte.close();
     
    //Traitement
    BufferedReader texte2 = new BufferedReader (new FileReader(nomfichier)) ;
     for (int j = 0 ; j < i ; j++ ) {
     
     StringTokenizer st = new StringTokenizer(texte2.readLine()," " );
     String str = st.nextToken();
     
       //On remplit les vecteurs au fur et a mesure
       coordx1.addElement(Double.valueOf(str));
       str = st.nextToken();
       coordy1.addElement(Double.valueOf(str));
       str = st.nextToken();
       coordz1.addElement(Double.valueOf(str));
       str = st.nextToken();
       coordx2.addElement(Double.valueOf(str));
       str = st.nextToken();
       coordy2.addElement(Double.valueOf(str));
       str = st.nextToken();
       coordz2.addElement(Double.valueOf(str));
       str = st.nextToken();
       truc1.addElement(str);
       str = st.nextToken();
       ids.addElement(Integer.parseInt(str));
       str = st.nextToken();
       truc2.addElement(str);  
     }
     
     //On ferme le buffer
    texte2.close();
     
    }  
    catch (IOException e)  
    {
     String test = e.toString();
     
    }  
     
  }
 
  public static void main (String[] args){
   
   String nomfichier = "C:\\u.txt";
   Fichiers poly = new Fichiers ();
   poly.LireFichierP(nomfichier);
   System.out.print(coordx1);
  }
 
   
 
}
---------------------
j'ai une erreur dans mon println "coordx1 can not be resolve"

Reply

Marsh Posté le 10-07-2007 à 20:40:41    

Bin ouais [:pingouino] Mate la portée de tes variables :/
Variables locales, membres de classe, etc... ça te parle ? Bin la solution est là.


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
Reply

Marsh Posté le 10-07-2007 à 20:45:49    

oui en fait je viens de le voir.. :P

Reply

Marsh Posté le 10-07-2007 à 20:46:10    

Merci

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed