Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Changer un caractère dans un String

4 réponses
Avatar
Gilles TOURREAU
Salut tout le monde !

Question de base un peu bête :
J'ai une chaine de caractère dans un String s, je voudrais juste changer le
caractère à la position x de cette chaine.

Comment puis-je faire sachant que l'itérateur s[x] est en lecture seule ?
Existe il une fonction ou une propriété que je n'aurait pas vue ?

En vous remerciant par avance...

4 réponses

Avatar
Laurent
Les string en .NET sont immuables se qui signifie que pour modifier une
chaîne il faut en fait en recréer un nouvelle qui comportera la
modification.
Donc dans ce cas, string.ToCharArray pour convertir char[], modifier le
caractère voulu et réassigner le tout pour recréer la chaîne.

Les StringBuilder peuvent aussi convenir pour des manipulations de chaînes
fréquentes.

Laurent


"Gilles TOURREAU" a écrit dans le message de news:
O9M$
Salut tout le monde !

Question de base un peu bête :
J'ai une chaine de caractère dans un String s, je voudrais juste changer
le caractère à la position x de cette chaine.

Comment puis-je faire sachant que l'itérateur s[x] est en lecture seule ?
Existe il une fonction ou une propriété que je n'aurait pas vue ?

En vous remerciant par avance...



Avatar
Gilles TOURREAU
Merci c'est exactement ce que je cherchais...

"Laurent" a écrit dans le message de news:
eE4j9%
Les string en .NET sont immuables se qui signifie que pour modifier une
chaîne il faut en fait en recréer un nouvelle qui comportera la
modification.
Donc dans ce cas, string.ToCharArray pour convertir char[], modifier le
caractère voulu et réassigner le tout pour recréer la chaîne.

Les StringBuilder peuvent aussi convenir pour des manipulations de chaînes
fréquentes.

Laurent


"Gilles TOURREAU" a écrit dans le message de
news: O9M$
Salut tout le monde !

Question de base un peu bête :
J'ai une chaine de caractère dans un String s, je voudrais juste changer
le caractère à la position x de cette chaine.

Comment puis-je faire sachant que l'itérateur s[x] est en lecture seule ?
Existe il une fonction ou une propriété que je n'aurait pas vue ?

En vous remerciant par avance...







Avatar
Christophe Lauer [MS]
Laurent wrote:
Les StringBuilder peuvent aussi convenir pour des manipulations de
chaînes fréquentes.



... et leur utilisation est généralement conseillée.

--
Christophe Lauer - Relations Techniques Editeurs de Logiciels
Division Développeurs et Plateforme d'Entreprise - Microsoft France
http://blogs.microsoft.fr/clauer/
This posting is provided "AS IS" with no warranties, and confers no
rights.
Avatar
Patrick Smacchia
Ou alors en s'autorisant à être unsafe on peut faire des trucs sympa...
http://www.practicaldot.net/fr/Chapter_14/Listing_14_5.htm

"Laurent" a écrit dans le message de news:
eE4j9%
Les string en .NET sont immuables se qui signifie que pour modifier une
chaîne il faut en fait en recréer un nouvelle qui comportera la
modification.
Donc dans ce cas, string.ToCharArray pour convertir char[], modifier le
caractère voulu et réassigner le tout pour recréer la chaîne.

Les StringBuilder peuvent aussi convenir pour des manipulations de chaînes
fréquentes.

Laurent


"Gilles TOURREAU" a écrit dans le message de
news: O9M$
Salut tout le monde !

Question de base un peu bête :
J'ai une chaine de caractère dans un String s, je voudrais juste changer
le caractère à la position x de cette chaine.

Comment puis-je faire sachant que l'itérateur s[x] est en lecture seule ?
Existe il une fonction ou une propriété que je n'aurait pas vue ?

En vous remerciant par avance...