Qual è il modo corretto di trasformare uno char[]
in una stringa?.NET/C# - Converti char [] in stringa
Il metodo ToString()
da un array di caratteri non fa il trucco.
Qual è il modo corretto di trasformare uno char[]
in una stringa?.NET/C# - Converti char [] in stringa
Il metodo ToString()
da un array di caratteri non fa il trucco.
char[] chars = {'a', ' ', 's', 't', 'r', 'i', 'n', 'g'};
string s = new string(chars);
Si noti che 'nuova stringa (null)' 'rendimenti String .Empty' e ** not ** 'null'! Se vuoi mantenere 'null', puoi creare un metodo di estensione' stringa statica ToStringSafe (questo char [] buf) {return buf == null? null: nuova stringa (buf); } '. – Skod
@Skod: visto che è impossibile che un'espressione "nuova" restituisca un valore diverso da un'istanza dell'oggetto, ciò non dovrebbe sorprendere nessuno. –
utilizzare il costruttore di corda che accetta un char []
char[] c = ...;
string s = new string(c);
Se solo avessi tre minuti più veloce, avresti risposto prima che la domanda fosse fatta! – DCastenholz
char[] characters;
...
string s = new string(characters);
String mystring = new String(mychararray);
Un altro modo:
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' accetta solo' string [] 'invece di' char [] ' – sky91
@ sky91 non solo, è possibile utilizzare String.Join
quindi dovresti scrivere 'string.Join
utilizzare il costruttore stringa che accetta chararray come argomento, posizione iniziale e lunghezza dell'array. Sintassi è il seguente:
string charToString = new string(CharArray, 0, CharArray.Count());
Un'altra alternativa
char[] c = { 'R', 'o', 'c', 'k', '-', '&', '-', 'R', 'o', 'l', 'l' };
string s = String.Concat(c);
Debug.Assert(s.Equals("Rock-&-Roll"));
Ecco la risposta https://stackoverflow.com/a/28143817/3926504 –