我有一个文本框(textBoxA),我会对内容进行拆分,单个字母会将它们放在char []数组中(我不会使用这些列表)。这是我使用的代码,我错了?
char[] but = textBoxA.Text.Split("-".ToCharArray());
答案 0 :(得分:2)
如果您不介意迭代,请使用Linq :)(using System.Linq;
)
char[] but = textBoxA.Text.Split('-').Select(s => Convert.ToChar(s)).ToArray();
答案 1 :(得分:1)
考虑一下你在做什么。 String.Split返回一个字符串数组(string [])。如果您假设您的输入只是单个字符,那么您可以使用:
char[] values = textBoxA.Text.Split(new [] { '-' }, StringSplitOptions.RemoveEmptyEntries).Select(e => e[0]).ToArray( );
答案 2 :(得分:0)
将返回string
的数组。参见
string[] but = textBoxA.Text.Split("-".ToCharArray());
此外,
string[] but = textBoxA.Text.Split('-');
答案 3 :(得分:0)
Split
返回一个字符串数组。如果你想要一个char数组按顺序包含每个字符串,你必须循环到Split
返回的数组,单独转换每个字符串Append
(或Add
,不能回想一下正确的语法),即转换到目标数组产生的char数组。
答案 4 :(得分:0)
您也可以使用..
string s = "A-B-C-D-E";
char[] but = s.Split('-').Select(Convert.ToChar).ToArray();
......比其中一个答案略短。