Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 12 sur 12
  1. #1
    Futur Membre du Club
    Inscrit en
    juin 2004
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : juin 2004
    Messages : 33
    Points : 16
    Points
    16

    Par défaut [VB.Net 2.0] Pourquoi ma concaténation de String ne fonctionne pas ?

    Hola,

    J'ai un petit souci avec de la concaténation.

    J'ai essayer des choses : "+", "&", String.Format, la methode Append du Text.StringBuiler, ...

    La string n'a pas de taille limite imposée, et pourtant j'ai toujours le meme resultat : la string ne concatene que 2 string sur les 6 ...

    Avez vous deja vu un probleme de la sorte ? Parce que la je bloque, et pour montrer que je ne debloque pas, voici le bout de code :

    Sachant que les éléments contiennent bien les string a recupérer (testé en debug), mais en sortie ca ne contient que les 2 premiers éléments ...

    Code :
    1
    2
    3
    4
    5
    6
    7
                    Dim _record As String
                    _record = CStr(r.ID) + " " + _
                    r.LastName.Text + " " + _
                    r.FirstName.Text + " " + _
                    r.Street.Text + " " + _
                    r.PostalCode.Text + " " + _
                    r.Locality.Text
    Je pensais appeler Mulder la ...

  2. #2
    Membre Expert Avatar de guitoux1
    Profil pro
    Inscrit en
    juin 2006
    Messages
    1 011
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : juin 2006
    Messages : 1 011
    Points : 1 220
    Points
    1 220

    Par défaut

    la concaténation en VB, c'est pas plutot "&" ?

    sinon, essai ça :

    Code :
    1
    2
    3
    4
     
    _record = String.Format("{0} {1} {2} {3} {4} {5} {6}", CStr(r.ID),
     r.LastName.Text, r.FirstName.Text, r.Street.Text, r.PostalCode.Text,
     r.Locality.Text)

  3. #3
    Futur Membre du Club
    Inscrit en
    juin 2004
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : juin 2004
    Messages : 33
    Points : 16
    Points
    16

    Par défaut

    Je crois que les 2 fonctionnent le "+" et le "&" ...

    Et j'ai deja essayé le string.format, mais merci de proposer.


    Je crois que le probleme vient des objets particuliers que j'utilise mais ca reste paranormal !

    Les objets etant developpés par une societe particuliere, je vais m'adresser a eux directement.

    Merci quand meme.

  4. #4
    Membre Expert Avatar de guitoux1
    Profil pro
    Inscrit en
    juin 2006
    Messages
    1 011
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : juin 2006
    Messages : 1 011
    Points : 1 220
    Points
    1 220

    Par défaut

    je coryais que toutes les valeurs été remplies ? (que tu avais vérifié en mode debug) ?

  5. #5
    Futur Membre du Club
    Inscrit en
    juin 2004
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : juin 2004
    Messages : 33
    Points : 16
    Points
    16

    Par défaut

    Oui, les valeurs sont bien la, apparement le probleme c'est que la concatenation apres cet objet devient compromise pour des raisons encore inconnues.

  6. #6
    Membre Expert
    Avatar de jbrasselet
    Homme Profil pro Julien Brasselet
    Chef de projet NTIC
    Inscrit en
    mars 2006
    Messages
    999
    Détails du profil
    Informations personnelles :
    Nom : Homme Julien Brasselet
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : mars 2006
    Messages : 999
    Points : 1 363
    Points
    1 363

    Par défaut

    Ca parait bête mais tu as essayé un truc du style

    Code :
    1
    2
    3
    4
    5
    6
    7
     
    Dim _record As String
    _record = CStr(r.ID) + " " + r.LastName.Text
    _record = _record + " " + r.FirstName.Text
    _record = _record + " " + r.Street.Text
    _record = _record + " " + r.PostalCode.Text
    _record = _record + " " + r.Locality.Text
    S'il ne fait que 2 par 2, faisons le lui faire 2 ar 2

  7. #7
    Futur Membre du Club
    Inscrit en
    juin 2004
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : juin 2004
    Messages : 33
    Points : 16
    Points
    16

    Par défaut

    Ca fait la meme chose

  8. #8
    Membre Expert
    Avatar de jbrasselet
    Homme Profil pro Julien Brasselet
    Chef de projet NTIC
    Inscrit en
    mars 2006
    Messages
    999
    Détails du profil
    Informations personnelles :
    Nom : Homme Julien Brasselet
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : mars 2006
    Messages : 999
    Points : 1 363
    Points
    1 363

    Par défaut

    Tu as testé plusieurs combinaison voir si c'est un champ en particulier qui fait que ça ne fonctionne pas?
    Du style seulement street, postalcode et localcity sans les autres.
    Ou alors les copier dans des variables temporaires que concatène ensuite.

    tiens questionc on : tu as essayé de concaténer plus de 3 chaines de caractères? Style:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Dim _str1 As String
    Dim _str2 As String
    Dim _str3 As String
    Dim _str4 As String
    Dim _record As String
     
    _str1 = "Je"
    _str2 = "testes"
    _str3 = "un"
    _str3 = "truc"
     
    _record = _str1 + " " + _str2 + " " + _str3 + " " + _str4

  9. #9
    Futur Membre du Club
    Inscrit en
    juin 2004
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : juin 2004
    Messages : 33
    Points : 16
    Points
    16

    Par défaut

    J'ai contourné le probleme (comme toujours)

    Je fais ma concatenation avec le type Unistring ou lieu de string, j'evite de melanger les deux et je transtype qu'a la fin.

    Et ca marche


    Ce n'etait pas une variable en particulier, j'avais testé.
    Il n'y avait pas de problemes avec la concatenation de string simples ("toto" et "luc" par exemple)


    Merci pour les suggestions.

    Bye

  10. #10
    Nip
    Nip est déconnecté
    Rédacteur

    Inscrit en
    juin 2004
    Messages
    965
    Détails du profil
    Informations forums :
    Inscription : juin 2004
    Messages : 965
    Points : 1 053
    Points
    1 053

    Par défaut

    Et un stringbuilder pour les concatenations ca serait pas un peu beaucoup mieux?

  11. #11
    Futur Membre du Club
    Inscrit en
    juin 2004
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : juin 2004
    Messages : 33
    Points : 16
    Points
    16

    Par défaut

    Je l'ai dit, j'ai deja essayé mais le probleme ne venait pas la ...

  12. #12
    Membre du Club Avatar de paradeofphp
    Inscrit en
    décembre 2005
    Messages
    312
    Détails du profil
    Informations forums :
    Inscription : décembre 2005
    Messages : 312
    Points : 64
    Points
    64

    Par défaut

    Bonjour,
    j'ai le même problème mais moi j'utilise vb.net 1.0.
    J'ai essayé StringBuilder mais ca n'a rien changé. avez-vous une idée ?
    ça fait 2 jours que je suis coincé là

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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •