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

Langage Java Discussion :

[Débutant] formater une chaine variable.


Sujet :

Langage Java

  1. #1
    Membre émérite Avatar de SirDarken
    Profil pro
    Développeur Web
    Inscrit en
    Février 2004
    Messages
    897
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Services de proximité

    Informations forums :
    Inscription : Février 2004
    Messages : 897
    Points : 2 276
    Points
    2 276
    Par défaut [Débutant] formater une chaine variable.
    Voila j'ai une chaine contenant un mot binaire , dont le nombre de caractère est variable ( aussi bien 001 que 100011001).

    Mon but serai de mettre un "\t" entre chaque caractère , j'ai regardé .format() mais a ce que j'en est lu (mon anglais est misérable) , il faut que je décrive le format en dur , hors ce n'est pas ce que je veux.

    Merci de vos lumières la dessus.
    Règles du club -> Cliquez-ici
    FAQ Hardware -> Cliquez-ici
    Vous avez résolu votre souci ->
    F1 et Google sont vos amis.

  2. #2
    Membre chevronné
    Profil pro
    Fabrication GED
    Inscrit en
    Octobre 2005
    Messages
    1 405
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Fabrication GED

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 405
    Points : 1 958
    Points
    1 958
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    String s="11011000111100011101";
    StringBuffer result=new StringBuffer();
    for(int i=0;i<s.length();i++){
       sb.append(s.charAt(i)+"\t");
    }
    System.out.println("magnifique : "+sb.toString());
    ma méthode n'est certainement pas la meilleur regex toussa, mais là, soit tu es une vrai feignasse, soit tu débutes ( et tu ignores ce qu'est le basic )...

  3. #3
    Membre émérite Avatar de SirDarken
    Profil pro
    Développeur Web
    Inscrit en
    Février 2004
    Messages
    897
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Services de proximité

    Informations forums :
    Inscription : Février 2004
    Messages : 897
    Points : 2 276
    Points
    2 276
    Par défaut
    Je débute oui et non , et pareil pour la feignasse.

    Le souci que je n'ai pas indiqué c'est que je fait déja beaucoup de traitement en boucle caractère par caractère.
    Aucun soucis ne ce pose avec 4 ou 5 variables , mais de grosses équation pourrai provoquer un trop long temps d'execution.

    Je cherchais une méthode propre et qui utilise format() (sinon à quoi sert cette fonction).
    En tout cas merci de ta contribution , je ferai cela si je n'ai d'autres choix ou réponses.
    Règles du club -> Cliquez-ici
    FAQ Hardware -> Cliquez-ici
    Vous avez résolu votre souci ->
    F1 et Google sont vos amis.

  4. #4
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 636
    Points : 5 943
    Points
    5 943
    Par défaut
    La méthode replaceAll() de la classe String est faite pour toi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    String s = "11011000111100011101";
    s = s.replaceAll(".", "$0\t");
    Et si tu as plusieurs chaînes de caractères à traiter, il serait peut-être même plus performant d'utiliser directement la méthode replaceAll() de la classe Matcher
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    String s1 = "100";
    String s2 = "101";
    String s3 = "11011000111100011100";
    String s4 = "11011000111100011101";
    Pattern pattern = Pattern.compile(".");
    s1 = pattern.matcher(s1).replaceAll("$0\t");
    s2 = pattern.matcher(s2).replaceAll("$0\t");
    s3 = pattern.matcher(s3).replaceAll("$0\t");
    s4 = pattern.matcher(s4).replaceAll("$0\t");
    Je ne répondrai à aucune question technique par MP.

    Pensez aux Tutoriels et aux FAQs avant de poster (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
    Enfin, quand une solution a été trouvée à votre problème
    pensez au tag

    Cours Dvp : http://ydisanto.developpez.com
    Blog : http://yann-disanto.blogspot.com/
    Page perso : http://yann-disanto.fr

  5. #5
    Membre émérite Avatar de SirDarken
    Profil pro
    Développeur Web
    Inscrit en
    Février 2004
    Messages
    897
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Services de proximité

    Informations forums :
    Inscription : Février 2004
    Messages : 897
    Points : 2 276
    Points
    2 276
    Par défaut
    Amen le premier me convient parfaitement.

    Je note le second dans ma tête on sais jamais ( je connais vraiment rien en java a ce que je voie).

    Enfin merci à toi le y@m's
    Règles du club -> Cliquez-ici
    FAQ Hardware -> Cliquez-ici
    Vous avez résolu votre souci ->
    F1 et Google sont vos amis.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. format d'une chaine variable
    Par delavega dans le forum ASP
    Réponses: 2
    Dernier message: 17/01/2010, 23h12
  2. Compter les occurences d'un car dans une chaine/variable
    Par sherlockfr dans le forum Windows
    Réponses: 2
    Dernier message: 10/11/2005, 07h48
  3. [vb.net]Formater une chaine en date
    Par Dnx dans le forum Windows Forms
    Réponses: 2
    Dernier message: 20/10/2005, 12h40
  4. Réponses: 3
    Dernier message: 17/12/2003, 11h26
  5. [langage] cherche script pour formater une chaine
    Par MASSAKA dans le forum Langage
    Réponses: 7
    Dernier message: 12/11/2003, 12h18

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