JAVA: Encodage des caractères

Résolu
mop666 Messages postés 46 Date d'inscription mercredi 31 mars 2004 Statut Membre Dernière intervention 27 février 2007 - 27 févr. 2007 à 20:05
Ombitious_Developper Messages postés 2333 Date d'inscription samedi 28 février 2004 Statut Membre Dernière intervention 26 juillet 2013 - 28 févr. 2007 à 11:14
Bonjour,

J'utilise JAVA 5 avec jrockit (BEA). A un moment dans le code j'effectue l'opération suivante:

public class Temp{
    private static final String DELIMITEUR = ",";
    private String [] tab;
  
   public void setTab(String liste){
       //DECOUPE DE LA CHAINE
    }
   
}

Mon problème est le suivant: la méthode setTab est appelée avec un paramètre lu en entrée standard (Scanner) ou par un paramètre passé en ligne de commande; je dois couper la chaîne passée en paramètre avec le DELIMITEUR. Que j'utilise les StringTokenizer ou la nouvelle méthode split (j'ai beau passer "," ou "\\,"), le résultat n'est pas le même selon les OS où le code est lancé: en effet sur certains environnement de lancement la chaîne n'est pas découpée, comme s'il ne voyait pas le séparateur.

Le problème vient surement du fait que les encodages de caractères diffèrent entre l'environemment de dévellopement et celui d'exécution....

Quelqu'un voit une solution de contournement (à part changer de délimiteur)?

Merci d'avance,

MoP

3 réponses

Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 111
28 févr. 2007 à 01:38
Salut,

ça dépend du contexte mais en gros si tu agis sur les séparateurs de fichier et séparateurs de variable d'env il ne faut pas les ecrire en dure mais passer par la classe File (ou les prop systeme (System.getProperty))
ex:
File.separator : retourne \\ pour win et / pour linux
File.pathSeparator : retourne ; pour wine et : pour unix

[auteurdetail.aspx?ID=237842 Ombitious_Developper] c'est pas Write Once Run Evrywhere mais Write Once Run Anywhere.
------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
3
Ombitious_Developper Messages postés 2333 Date d'inscription samedi 28 février 2004 Statut Membre Dernière intervention 26 juillet 2013 38
27 févr. 2007 à 22:49
Salut:

Comment ça ami? Java = Write Once Run Evrywhere.



Je te conseille de faire la trace de ton programme.




__________________________________________________________
A.B. :  La lumière voyage plus vite que le son. C'est pourquoi certainespersonnes paraissent brillantes jusqu'à ce qu'elles commencent à parler ...
0
Ombitious_Developper Messages postés 2333 Date d'inscription samedi 28 février 2004 Statut Membre Dernière intervention 26 juillet 2013 38
28 févr. 2007 à 11:14
Salut:

Pardon, àa fait longtemps que j'ai vu cette expression dans un livre de plus c'est écrit là: WORA




__________________________________________________________
A.B. :  La lumière voyage plus vite que le son. C'est pourquoi certainespersonnes paraissent brillantes jusqu'à ce qu'elles commencent à parler ...
0
Rejoignez-nous