从不规则文本文件中读取数据到c++中的类

Reading data from an irregular text file to a class in C++

本文关键字:c++ 数据 读取 不规则 文本 文件      更新时间:2023-10-16

我一直在研究一个项目,该项目要求我从文本文件读取学生数据到非stl数据结构。它有这样的数据:

semester 1                                                              
Code    Course Title    Crd Pnt Grd Rmk  <----(This line is of no use to me :/)                             
                                         <----(This line is of no use to me :/)
code1   course1 1   3.33    B+                                          
code2   course2 3   3   B       
code3   course3 3   3   B                                           
semester2
Code    Course Title    Crd Pnt Grd Rmk
code1   course1 1   3.33    B+                                          

code2   course2 3   3   B

现在可以看到,文本文件有一些不规则的尾符(n)和空格以及我不需要的数据(注意我不需要的行)。到目前为止,我已经制作了一个课程类来存储单个课程的数据。然后是一个学期班,有一系列的课程和gpa,然后是一个学生班,有一系列的学期和CGPA。我使用数组,因为我不允许使用STL。我知道数组可能会浪费一些存储空间,但使用任何其他方法,如创建自定义列表类,将证明速度要慢得多。我有200多名学生的数据,每个学生学习了3到7个学期,每学期的课程数量在5到7门之间。作为练习,我不能使用STL或其他内置库,除了c++字符串库。我试过用getline来挑选一条线,然后用一些条件来检查它是否是一个课程。但它并没有像预期的那样起作用。其次,我无法弄清楚如何忽略我不需要的行(如空格和课程名称的标题等),我如何处理这种不规则的文本文件进行数据操作?

所以我已经完成了解析文本文件:)我逐行选择文本并使用string::findstring::substr,工作变得容易得多。谢谢你对我问题的建议@Sam。