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

C# Discussion :

[C#]String.Format avec un Array


Sujet :

C#

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 43
    Points : 37
    Points
    37
    Par défaut [C#]String.Format avec un Array
    Bonjour,

    J'aimerai avec un string.format insérer tout les éléments d'un tableau de int[] et les séparer d'un espace.

    Par exemple partir de ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    liste[0] = 55
    liste[1] = 33
    liste[2] = 44
    pour arriver à ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    stringliste = "55 33 44"
    Un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String.Format(????, liste);
    où ???? est un format permettant celà est il possible ? Sachant que mon tableau est de taille variable.

    Merci,
    Greg

  2. #2
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    Ceci sera beaucoup plus direct
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    string s = String.Join(" ",liste);

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    652
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 652
    Points : 730
    Points
    730
    Par défaut
    Du moins après avoir converti l'int[] en string[] (à la mano :)

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 43
    Points : 37
    Points
    37
    Par défaut
    Merci beaucoup j'vais voir si ça marche ^^

  5. #5
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    Oui c'est vrai Maniak j'ai été distrait
    Donc dans ce cas autant revenir à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    string s = string.Empty;
    foreach (int i in liste)
     {
        s += string.Format("{0} ", i);
     }
    s = s.Trim();

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 43
    Points : 37
    Points
    37
    Par défaut
    J'ai de toute façon changé mon int[] en string[] ^^

    Hop résolu

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    652
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 652
    Points : 730
    Points
    730
    Par défaut
    Citation Envoyé par neguib
    Oui c'est vrai Maniak j'ai été distrait :oops:
    Donc dans ce cas autant revenir à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    string s = string.Empty;
    foreach (int i in liste)
     {
        s += string.Format("{0} ", i);
     }
    s = s.Trim();
    Concaténation de chaînes dans une boucle ? :)
    Non je sais pas,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    stringliste = String.Join( ConvertToStringArray( liste ) );
    me semble plus clair :)
    En plus la méthode de conversion peut être mise dans un service et resservir ailleurs :)

  8. #8
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    Citation Envoyé par Maniak
    Concaténation de chaînes dans une boucle
    Non je sais pas
    Pour la suite ok mais peux-tu tout de même m'eclairer sur ce point, le seul inconvenient que j'y vois est de ne pas avoir employé un StringBuilder pour faire cette concatenation de façon plus economique. Est-celà qui te chiffonne ? ou autre chose ce qui ne m'étonnerai guère au vu de mon inculture informatique. Peux-tu combler un peu mes lacunes stp merci par avance Maniak

  9. #9
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    652
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 652
    Points : 730
    Points
    730
    Par défaut
    Citation Envoyé par neguib
    le seul inconvenient que j'y vois est de ne pas avoir employé un StringBuilder pour faire cette concatenation de façon plus economique. Est-celà qui te chiffonne ?
    Ben vi :)

    Quand il y a moyen de faire à la fois plus clair et en évitant des concaténations, en particulier dans une boucle pour laquelle on n'a aucune idée du nombre d'itérations, je penche rarement vers la concaténation :)

    Il n'y aurait que 3 éléments dans la liste, on s'en foutrait, mais on n'en sait rien. Et vu que les concaténations en boucle ralentissent de façon exponentielle, autant s'abstenir quand on peut non ? :)

    Après c'est aussi une question d'habitude. à force de toujours chercher à éviter ça, ça devient automatique :)

    PS: avec seulement 3 éléments, le StringBuilder serait plus lent et compliquerait encore plus le code. Donc dans ce cas-là, sans autre choix, la concaténation serait mieux. Mais autre choix il y a :)
    (et oui, c'est du pur chipotage :)

  10. #10
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 43
    Points : 37
    Points
    37
    Par défaut
    chipotage très intéressant ma fois

  11. #11
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    Citation Envoyé par Maniak
    (et oui, c'est du pur chipotage
    Ben j'avoue que je ne le prenais pas ainsi, étant conscient de mes lacunes(j'ai eu une première vie sans informatique ) j'ai pris au contraire très au sérieux ta remarque comme excellente occasion de consolider et d'étayer mes connaissances.

  12. #12
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    652
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 652
    Points : 730
    Points
    730
    Par défaut
    Citation Envoyé par neguib
    j'ai pris au contraire très au sérieux ta remarque comme excellente occasion de consolider et d'étayer mes connaissances. :) :wink:
    Les occasions de me prendre au sérieux sont pourtant rares :)

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

Discussions similaires

  1. string formatting avec dictionnaires
    Par tnntwister dans le forum Général Python
    Réponses: 4
    Dernier message: 18/08/2010, 20h11
  2. String.Format avec longueur en parametre
    Par olibara dans le forum C#
    Réponses: 2
    Dernier message: 27/05/2010, 23h07
  3. Formater avec String.Format un nombre ou une date
    Par bubulemaster dans le forum Débuter
    Réponses: 2
    Dernier message: 29/06/2008, 19h00
  4. [reporting service] String.Format avec 4 virgules
    Par oolon dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 28/03/2007, 10h08
  5. [String] formater une chaine avec un tableau d'argument
    Par jakouz dans le forum Collection et Stream
    Réponses: 6
    Dernier message: 14/04/2006, 15h19

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