我有一个字符串,
string aString = "a,aaa,aaaa,aaaaa,,,,,";
我要插入List ..但是当我使用以下方法时,
List<string> aList = new List<string>();
aList.AddRange(aString.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries));
MessageBox.Show(aList.Count.ToString());
我的计数只有4,但实际上有8个元素,即使(,)符号之间的最后一个字符是空白的。
但如果我传递了如下所示的字符串,
string aString = "a,aaa,aaaa,aaaaa, , , , ,";
它将显示为8个元素。请帮助我,这个程序检索字符串的默认方式是这样的,
a,aaa,aaaa,aaaaa,,,,,
请帮助这个,如果我可以在空白区域或任何其他方式添加空格,以便我可以在(,)符号之间添加所有这些字符到列表..甚至空白区域将是很好的。谢谢:))
答案 0 :(得分:5)
请勿使用StringSplitOptions.RemoveEmptyEntries
string aString = "a,aaa,aaaa,aaaaa,,,,,";
var newStr = String.Join(", ", aString.Split(','));
答案 1 :(得分:1)
我认为您必须删除StringSplitOptions.RemoveEmptyEntries
aList.AddRange(aString.Replace(",,", ", ,").Split(new string[] { "," }));
答案 2 :(得分:0)
在分割之前你可以Replace
空间。
aList.AddRange(aString.Replace(" ", "").Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries));