【问题标题】:Linking txt file info with other file将txt文件信息与其他文件链接
【发布时间】:2013-10-13 16:28:25
【问题描述】:

我正在创建我的第一个应用程序,学生成绩簿,现在我遇到了一个问题。我有一个包含学生信息的 txt 文件(每行 1 个学生),我需要将每个学生与他们的分数联系起来(他们在其他文件中)。你想怎么做?也许我需要制作一个学生姓名和二维数组的结构?

附:抱歉英语不好

这就是我的意思

学生姓名姓氏

        // ---------------------------------------------------------
        // |Science   |1 |2 |3 |4 |5 |6 |7 |8 |9 |10|11|12|13|14|15|
        // ---------------------------------------------------------
        // |Maths     |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
        // |English   |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |

1、2、3、4等为学生成绩指标

【问题讨论】:

    标签: c# arrays file text


    【解决方案1】:

    一个建议:

    public class Student
    {
        public Student()
        {
            Marks = new List<StudentMark>();
        }
        public string Name { get; set; }
        public List<StudentMark> Marks { get; set; }
    
        public void Load(string line)
        {
            string[] parts = line.Split(' ');
            Name = parts[0];
            //Other properties, if any:
            //LastName = parts[1];
        }
    }
    public class StudentMark
    {
        public float Mark { get; set; }
        public string Lesson { get; set; }
    }
    

    【讨论】:

    • 一切正常,但在“string[] parts = line.Split(" ");" 处出现错误错误代码是“无法从字符串转换为 char[]”
    • 对不起。我的错。请改用string[] parts = line.Split(' ');。或 linse.Split('|'); 如果 | 是分隔符。编辑了答案。
    【解决方案2】:

    我不确定您的程序有多复杂,但是否可以选择创建一个学生对象,在该对象中保存学生的所有信息,包括姓名和平均成绩?这将允许您保存其他相关信息。否则,是的,可以选择查看 c# 语言的字典类。 http://msdn.microsoft.com/en-us/library/xfhwa508.aspx

    【讨论】:

    • 我有学生姓名,我需要显示学生在每门科学中的所有成绩,而不仅仅是平均成绩
    • 那么我建议您从@Mahmoodvcs 那里得到答案,因为这会考虑到分数的运行列表。您可以更改他的列表以使用字典,使用日期时间对象或日期字符串作为键,然后使用双精度或浮点数作为分数。我只是想知道,您为什么使用文本文件而不是数据库?
    【解决方案3】:

    您是否可以控制单独的学生和分数文件的生成?如果是这样,您可以为每个学生分配一个唯一的 id 并将两者都存储在每个文件中吗?这将提供两者之间的联系。您可以将 id 添加为 @mahmoodvcs 解决方案的成员。然后添加逻辑,通过 id 解析数据,得到每个学生的相关分数。

    【讨论】:

      猜你喜欢
      • 2017-10-29
      • 1970-01-01
      • 2012-04-25
      • 2012-04-07
      • 1970-01-01
      • 1970-01-01
      • 2014-04-21
      • 1970-01-01
      • 2018-09-19
      相关资源
      最近更新 更多