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 :

transformer en chaines en plusieurs lignes de n caractères


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut transformer en chaines en plusieurs lignes de n caractères
    bonjour,

    je dois transformer une chaine de caractères en plusieurs lignes (si besoin) de 60 caractères maxi.
    j'ai ce code qui fonctionne, mais je souhaitais savoir si il y avait d'autres manières plus opti de faire cela.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
                int lon = texteOrigine.ToString().Length;
                int i = 1;
                while (i * 60 < lon)
                {
                    sb.AppendLine(texteOrigine.Substring((i - 1) * 60, 60));
                    i++;
                }
                sb.AppendLine(texteOrigine.Substring((i - 1) * 60));
    merci de vos remarques/commentaires.
    ben

  2. #2
    Membre émérite
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2010
    Messages
    479
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2010
    Messages : 479
    Par défaut
    Salut,
    mon implémentation :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    string txt = "123456789abcdefg";
                const int NB = 7;
                StringBuilder sb = new StringBuilder();
                for (int i = 0; i < txt.Length; i+=NB)
                {
                    int lenght =  txt.Length - i;
                    sb.AppendLine(txt.Substring(i, lenght >= NB ? NB : lenght));
                }

  3. #3
    Invité
    Invité(e)
    Par défaut
    merci lead8209, je note ta solution

  4. #4
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    Bonjour, j'aurai fait ça comme cela

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    string txt1 = "123456789abcdefg";
    int NB = 50;
     
    char[] arraytxt = txt1.ToCharArray(0, (txt1.Length > NB) ? NB : txt1.Length);
    string txt2 = string.Join(Environment.NewLine, arraytxt);

  5. #5
    Membre émérite
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2010
    Messages
    479
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2010
    Messages : 479
    Par défaut
    J'ai cherché un truc comme ta solution ericlm128 mais sans trop trouver.
    Par contre le code que tu as donné ne fait pas ce que benoit1024 demande. Il retourne tous les caractères à la ligne au lieu d'y retourner tous les 50 caract.

  6. #6
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    Ok merci 'lead8209' je n'avais pas bien comprit.

    Je vais voir mais effectivement c'est moins évident.

Discussions similaires

  1. Expression régulière : chaine sur plusieurs lignes
    Par djibril dans le forum Langage
    Réponses: 1
    Dernier message: 13/03/2014, 13h00
  2. Transformer des colonnes en plusieurs lignes
    Par boubadia dans le forum Autres
    Réponses: 2
    Dernier message: 29/06/2012, 12h39
  3. Réponses: 9
    Dernier message: 19/12/2006, 12h02
  4. syntaxe action script chaine sur plusieurs lignes
    Par totoche dans le forum Flash
    Réponses: 2
    Dernier message: 27/10/2006, 12h26

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