Pb de lecture dans un fichier texte
Bonjour à tous,
je cherche à exploiter les données dans un fichier texte de la forme suivante:
2000
(
(0.999526 0.000683934 0)
(0.988978 0.00114476 0)
(0.989125 0.00116963 0)
... et un peu moins de 2000 autres valeurs
J'utilise le code suivant:
Code:
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
| import java.io.*;
import java.util.*; // pour StringTokeniser
public class Main {
// Lecture dans un fichier texte
public static void main (String args[]) throws IOException
{
String nomfich;
double x,y,z;
nomfich="U.txt";
BufferedReader entree = new BufferedReader (new FileReader (nomfich));
System.out.println("Nombres contenus dans le fichier "+ nomfich +":");
while (true)
{String ligneLue = entree.readLine();
if (ligneLue==null) break;
StringTokenizer tok= new StringTokenizer (ligneLue," ");
x=Double.parseDouble(tok.nextToken());
y=Double.parseDouble(tok.nextToken());
z=Double.parseDouble(tok.nextToken());
System.out.println (x + " "+y+" "+z);
}
entree.close ();
System.out.println("fin liste fichier"+nomfich);
}
} |
Et j'obtiens le message d'erreur suivant:
Exception in thread "main" java.lang.NumberFormatException: For input string: "("
at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
at java.lang.Double.parseDouble(Unknown Source)
Comme je débute en java, je ne sais comment je pourrais ne pas supprimer les parenthèses ou ne pas en tenir compte dans mon "tokenizer"afin d'exploiter mes données numériques??
merci d'avance