【发布时间】:2018-11-07 05:08:43
【问题描述】:
我试图计算文件中的单词,要么我做一个 string[] 列表并在取出空格时出错,要么我做普通字符串并在拆分字符串部分出错,我也想显示三个最重复的单词,这就是为什么我需要一个所有字符串的列表。
代码如下:
//Reading File
var path = @"D:\Projects\C sharp Course\Working_with_Files\Working_with_Files_1\Text.txt";
List<string> list = new List<string>();
var content = File.ReadAllText(path);
var text = content.Trim();
string[] splitted;
//Splitting String
for (int i = 0; i < text.Length; i++)
{
splitted = text.Split(',', ' ', '.', '(', ')');
list.Add(splitted);
}
//Taking out Whitespaces
for (int i = 0; i < list.Count; i++)
{
if (string.IsNullOrWhiteSpace(list[i]))
{
list.RemoveAt(i);
}
}
【问题讨论】:
-
list.Add(splitted)没有意义。splitted是一个数组。list.Add()需要一个单个字符串。也许你想要AddRange(),但即便如此,如果你已经有了数组,为什么还要麻烦列表呢?