Java manipulation fichier
Fermé
Jne
-
5 janv. 2013 à 11:01
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 - 5 janv. 2013 à 11:23
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 - 5 janv. 2013 à 11:23
A voir également:
- Java manipulation fichier
- Fichier rar - Guide
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel football - Télécharger - Jeux vidéo
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
1 réponse
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 020
Modifié par KX le 5/01/2013 à 11:28
Modifié par KX le 5/01/2013 à 11:28
split renvoie un tableau String[], or morse[i] est un String, d'où l'erreur.
Il faudrait plutôt faire quelque chose comme ça :
Mais perso, je te déconseille de continuer avec des tableaux, l'utilisation de listes est plus adapté car tu ne connais pas à l'avance la taille de ton tableau (là tu as mis 100, mais c'est peut-être 10 ou 1000 !!!)
De plus je ne comprends pas pourquoi tu fais "tmp = tmp +", une fois que la première ligne est traitée tu n'as pas besoin de la retraiter une deuxième fois avec la deuxième ligne, ni une troisième fois avec la troisième ligne, etc.
ATTENTION !
La méthode split prend en paramètre une expression régulière, et "|" ne fonctionne pas, car | est un caractère spécial utilisé dans ces expressions, il faut donc l'échapper avec un \ dans l'expression régulière (qui se double dans le String)
Il faudrait plutôt faire quelque chose comme ça :
String[] split = tmp.split(delimiteur); for (int j=0; j<split.length; j++) morse[i++] = split[j];
Mais perso, je te déconseille de continuer avec des tableaux, l'utilisation de listes est plus adapté car tu ne connais pas à l'avance la taille de ton tableau (là tu as mis 100, mais c'est peut-être 10 ou 1000 !!!)
LinkedList<String> liste = new LinkedList<String>(); liste.add(split[j]);
De plus je ne comprends pas pourquoi tu fais "tmp = tmp +", une fois que la première ligne est traitée tu n'as pas besoin de la retraiter une deuxième fois avec la deuxième ligne, ni une troisième fois avec la troisième ligne, etc.
ATTENTION !
La méthode split prend en paramètre une expression régulière, et "|" ne fonctionne pas, car | est un caractère spécial utilisé dans ces expressions, il faut donc l'échapper avec un \ dans l'expression régulière (qui se double dans le String)
String delimiteur = "\\|";Dernière remarque (au moins pour l'instant), tu ne peux pas faire directement System.out.println(morse); car morse est un tableau, tu peux en revanche faire System.out.println(Arrays.toString(morse)); mais si tu remplaces ce tableau par une liste tu n'auras plus ce problème...La confiance n'exclut pas le contrôle