我想知道为什么没有简单的方法可以做到这一点。
我只想将字符串拆分为字符串数组而不指定任何分隔符。即G。我的输入为“你好”,我希望结果为“H”,“e”,“l”,“l”,“o”i。即一个字符串数组。
有一个直接的方法,用于将字符串拆分为字符数组(.ToCharArray()),然后可以转换为字符串数组,但没有任何东西可以直接给我字符串数组。
或者我甚至不能这样做:
string[] myStringArray = myString.Split(''); // Compile error
答案 0 :(得分:4)
你可以使用一点Linq来实现你的目标
string[] myStringArray = myString.Select(x => x.ToString())
.ToArray();
答案 1 :(得分:2)
如果您需要处理组合字符和代理项对,您应该使用StringInfo
类来分割字符串:
var str = "";
var chars = new List<string>();
var tee = StringInfo.GetTextElementEnumerator(str);
while (tee.MoveNext())
chars.Add(tee.GetTextElement());