【问题标题】:read text file into custom data class将文本文件读入自定义数据类
【发布时间】:2010-01-10 21:11:40
【问题描述】:

我有一个文本文件,其中包含整数、双精度或字符串的数据列。我想将每一行数据读入我自己的记录类。我事先知道列数据类型,所以我正在解析一个文本文件行,类似于下面的代码(我输入了它,所以不要抱怨有错误)。我没有列出所有的列,所以 switch 语句将有 74 个案例。我不知道这是否是最好的方法。有什么更好的方法来做到这一点?此外,它需要尽可能快。

List<record> records = new List<record>();

string[] split = textRow.Split(new string { "," }, StringSplitOptions.None);
record = new Record();
for (int i=0;i<split.Length;i++)
{      
   switch (i)
   {
      case 0: 
         record.ID = Convert.ToInt32(split[0]);
         break;
      case 1:
         record.Name = split[1];
         break;
      case 2:
         record.Rate = Convert.ToDouble(split[2]);
         break;
      case 3:
         record.Price = Convert.ToDouble(split[3]);
         break;
      case 4:
         record.Rank = Convert.ToInt32(split[4]);
         break;

   }
}

records.Add(record);

【问题讨论】:

    标签: c# text-parsing text-files


    【解决方案1】:

    你真的需要那个switch吗?怎么样:

    string[] split = textRow.Split(new string { "," }, StringSplitOptions.None);
    record = new Record();
    record.ID = Convert.ToInt32(split[0]);
    record.Name = split[1];
    record.Rate = Convert.ToDouble(split[2]);
    record.Price = Convert.ToDouble(split[3]);
    record.Rank = Convert.ToInt32(split[4]);
    

    【讨论】:

    • 你的权利!我不知道我在想什么。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-11
    • 2013-04-01
    • 1970-01-01
    相关资源
    最近更新 更多