【MFC】:MFC关于文件读写的代码及结构体的错误问题

来源:互联网 发布:玛士达编程用软件 编辑:程序博客网 时间:2024/05/27 01:38

首先,这篇文章要给大家讲一句关于VC里面结构体的声明问题
比如说下面的代码:
struct pos{
CString temp’
}P[5000]; //这段代码就是错误的,我也不知道为什么

struct pos{
CString temp;
}g; //这段代码也是错误的。。。

struct pos{
CString temp;
};
pos g; //这样就是正确的了,比如要如此声明才可以

剩下的内容就是关于文件操作就是读取的问题了。
我这里简单说一下我的想法,方法就是写进去的时候一行一行的写,用writestring函数
读出来的时候也是一行一行的读,用readstring函数
之后读出来的一行数据通过空格进行拆分,这时候就能获得你想要的数据了,详细代码如下:

    CStdioFile myfile,readfile;    if(myfile.Open("d:\\book.dat",CFile::typeText|CFile::modeCreate|CFile::modeReadWrite|CFile::modeNoTruncate)){        myfile.SeekToEnd(); //移动指针到末尾        myfile.WriteString(temp.name);        myfile.WriteString(" ");        myfile.WriteString(temp.schnumber);        myfile.WriteString(" ");        myfile.WriteString(temp.identity);        myfile.WriteString(" ");        myfile.WriteString(temp.tel);        myfile.WriteString(" ");        myfile.WriteString(temp.money);        myfile.WriteString(" ");        myfile.WriteString(temp.other);        myfile.WriteString(" ");        myfile.WriteString(temp.date);        myfile.WriteString("\n");    }    myfile.Close();    MessageBox("录入成功");    CString data;    struct bike{            CString temp[7];     //这里的temp CString数组是用来接各种数据用的    };    bike ggg[50000];                         //这样弄完之后就能把文件的各种信息放到结构体里面了    int wide_count = 0;    if(readfile.Open("d:\\book.dat",CFile::modeCreate|CFile::modeNoTruncate|CFile::modeReadWrite)){        while(readfile.ReadString(data)){            MessageBox(data);   //每一行的数据都已经存到了data里面            int count;            count = 0;            for(int i=0;i<data.GetLength();i++){                if(data[i]!=' '){                    ggg[wide_count].temp[count] = ggg[wide_count].temp[count] + data[i];                }                else{                    ggg[wide_count].temp[count] = ggg[wide_count].temp[count] + '\0';                    count++;                }            }            for(i=0;i<=count;i++){                MessageBox(ggg[wide_count].temp[i]);            }            wide_count++;        }    }    readfile.Close();
0 0
原创粉丝点击