将AddRange用于新的List <string> </string>

时间:2014-06-05 14:06:28

标签: c# string list addrange

如何:对列表使用AddRange

List<string> list = 
    new List<string>().AddRange(File.ReadAllLines(path, Encoding.UTF8);

这是一个全局声明的变量 - 我的错误是什么?

错误等于

  

不允许从字符串转换为空白

4 个答案:

答案 0 :(得分:7)

原因AddRange返回类型无效,而不是List<string>

并且,正如错误所述,您无法将void分配给List<string>

你可以做到

List<string> list = File.ReadAllLines(path, Encoding.UTF8).ToList();

答案 1 :(得分:4)

您只需将代码更改为:

List<string> list = new List<string>(File.ReadAllLines(path, Encoding.UTF8));

答案 2 :(得分:1)

你需要分两步:

var list = new List<string>();
list.AddRange(File.ReadAllLines(path, Encoding.UTF8));

AddRange不会返回列表,因此您需要首先获取实例&#34;或者像HABJAN建议的那样直接初始化它。

答案 3 :(得分:1)

你需要拆分你的陈述:

List<string> list = new List<string>();
list.AddRange(File.ReadAllLines(path, Encoding.UTF8));

或者,如果您想在一步中完成:

List<string> list = File.ReadAllLines(path, Encoding.UTF8).ToList();