问题描述
解决方案
行的结束符是回车换行,即 0x0D 0x0A
想读取一行,最简单、原始的方法就是一个字符一个字符读,然后判断是否是回车换行?如果是,则一行结束;否则继续读。
先将数据读取到结构体中,然后想怎么处理就与文件没有关系了。处理完后,再写入文件。
解决方案二:
需读:读而不用。一行一行读下去,读到你要的,进行处理。
解决方案三:
这个地方举个例子,将所有的关于的信息读入一个结构体数组或者是链表中,对于里面的数据进行排序就可以了
解决方案四:
就按你写的文字来看,先定义一个学生考勤的数据结构,譬如
class Attendence{
unsigned int Student_ID;
string Name;
string ArriveTime;
string LeaveTime;
unsigned int WorkingTime;
unsigned int RankNum;
};
vector AttendenceTable;
然后打开文件
ifstream in("outfile.txt");
一行行的读
while(getline(in, str))
{
sscanf()/strstr等函数解析每行并存入相应的结构加入AttendenceTable
}
最后sort排序,参考http://blog.csdn.net/pathuang68/article/details/7526381
时间: 2024-09-17 04:41:57