c# - Supprimer un personnage de mon constructeur de cordes




3 Answers

Vous pouvez simplement diminuer la longueur pour raccourcir la chaîne (C #):

mstrResult.Length -= 1;

MODIFIER:

Après avoir mis à jour votre question, je pense que je sais ce que vous voulez :)

mstrResult.Append(rtbResult.Text).Append("})})" + Environment.NewLine);
var index = mstrResult.ToString().LastIndexOf(',');
if (index >= 0)
    mstrResult.Remove(index, 1);

J'ai le générateur de chaîne suivant comme msrtResult, ce qui est assez long:

mstrResult.Append(rtbResult.Text).Append("})})" + Environment.NewLine)

Comment puis-je supprimer le dernier "," de mstrResult maintenant? (il se trouve au milieu de mstrResult et ce n'est pas le dernier caractère de la chaîne depuis que j'ajoute des chaînes) Je devrais le faire avant d'ajouter la nouvelle ligne. Merci




Vous pouvez utiliser StringBuilder.Remove() si vous connaissez la position du ou des caractères à supprimer.

J'imagine qu'il serait plus facile de ne pas l'ajouter en premier lieu.

Votre question mise à jour parle de supprimer le dernier caractère virgule. Je suppose que vous voulez faire cela pour éviter de créer un message qui ressemble à ceci:

Ma liste de courses contenait du lait, des œufs, du beurre et du poisson.

Vous devez assembler ceci en boucle, en itérant sur un tableau. Habituellement, vous pouvez écrire la boucle pour que vous choisissiez simplement (par exemple avec une instruction if) de ne pas ajouter la commande lorsque vous êtes dans l'itération finale de la boucle.




Pour supprimer simplement le dernier caractère ajouté, utilisez ci-dessous: (Ceci est VB mais C devrait fonctionner de la même manière)

Dim c As New StringBuilder
c.Remove(c.Length - 1, 1)



Related


Tags

c#   .net   vb.net