Quelle est la bonne façon de transformer un char[]
en une chaîne?.NET/C# - Convertir char [] en chaîne
La méthode ToString()
à partir d'un tableau de caractères ne fait pas l'affaire.
Quelle est la bonne façon de transformer un char[]
en une chaîne?.NET/C# - Convertir char [] en chaîne
La méthode ToString()
à partir d'un tableau de caractères ne fait pas l'affaire.
char[] chars = {'a', ' ', 's', 't', 'r', 'i', 'n', 'g'};
string s = new string(chars);
Notez que 'nouvelle chaîne (null)' 'donne chaîne .Empty' et ** pas ** 'null'! Si vous voulez garder 'null', vous pouvez faire une méthode d'extension' chaîne statique ToStringSafe (ce char [] buf) {return buf == null? null: nouvelle chaîne (buf); } '. – Skod
@Skod: Voyant qu'il est impossible pour une "nouvelle" expression de renvoyer une valeur autre qu'une instance d'objet, cela ne devrait surprendre personne. –
Utilisez le constructeur de chaîne qui accepte un char []
char[] c = ...;
string s = new string(c);
Si seulement vous étiez trois minutes plus vite, vous auriez répondu avant que la question a été posée! – DCastenholz
char[] characters;
...
string s = new string(characters);
String mystring = new String(mychararray);
Une autre façon:
char[] chars = {'a', ' ', 's', 't', 'r', 'i', 'n', 'g'};
string s = string.Join("", chars);
//we get "a string"
// or for fun:
string s = string.Join("_", chars);
//we get "a_ _s_t_r_i_n_g"
'string.Join' n'accepte que' string [] 'au lieu de' char [] ' – sky91
@ sky91 non seulement, vous pouvez utiliser String.Join
alors vous devriez écrire 'string.Join
Utilisez le constructeur de chaîne qui accepte chararray comme argument, position de départ et longueur du tableau. La syntaxe est donnée ci-dessous:
string charToString = new string(CharArray, 0, CharArray.Count());
Une autre alternative
char[] c = { 'R', 'o', 'c', 'k', '-', '&', '-', 'R', 'o', 'l', 'l' };
string s = String.Concat(c);
Debug.Assert(s.Equals("Rock-&-Roll"));
Voici la réponse https://stackoverflow.com/a/28143817/3926504 –