我正在读这样的文件,有这样的多行。
“标题,名称,东西,什么,什么”
如何使用这些变量动态创建新对象
我已经拆分了它 -
while (!reader.EndOfStream)
{
lineFromFile = reader.ReadLine();
split = lineFromFile.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
}
我的班级名为模块。只是不知道如何动态地这样做,因为我不知道ETC文件中有多少个模块。
答案 0 :(得分:2)
创建List<Module>
并添加从您的文件中读取的所有项目:
List<Module> modules = new List<Module>();
while (!reader.EndOfStream)
{
lineFromFile = reader.ReadLine();
split = lineFromFile.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
var newModule = new Module();
newModule.Property1 = split[0];
newModule.Property2 = split[1];
// (...) //
modules.Add(newModule);
}
或使用LINQ:
var modules = (from line in File.ReadAllLines("fileName")
let parts = line.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries)
select new Module() {
Property1 = parts[0],
Property2 = parts[1],
Property3 = parts[2],
}).ToList();