将char[]转换为字符串的正确方法是什么?
char[]
来自字符数组的ToString()方法不能做到这一点。
ToString()
这里有一个构造函数:
char[] chars = {'a', ' ', 's', 't', 'r', 'i', 'n', 'g'}; string s = new string(chars);
使用string的构造函数,它接受char[]
char[] c = ...; string s = new string(c);
char[] characters; ... string s = new string(characters);
String mystring = new String(mychararray);
还有一种方法:
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"
使用字符串构造函数,它接受chararray作为参数,数组的起始位置和长度。语法如下:
string charToString = new string(CharArray, 0, CharArray.Count());
另一种替代方法
char[] c = { 'R', 'o', 'c', 'k', '-', '&', '-', 'R', 'o', 'l', 'l' }; string s = String.Concat( c ); Debug.Assert( s.Equals( "Rock-&-Roll" ) );