我想在MFC生成的文档-视图结构程序中保存文档的内容以便下次使用,我的数据保存在文档的一个数组中,但系统封装的太厉害了.我不知到怎么去将整个数组保存到指定的文件内并且如果要读入或者合并文件都该如何实现??

解决方案 »

  1.   

    WriteFile不就行了,或者用序列化
      

  2.   

    BOOL WriteFile( 
    HANDLE hFile, 
    LPCVOID lpBuffer, 
    DWORD nNumberOfBytesToWrite, 
    LPDWORD lpNumberOfBytesWritten, 
    LPOVERLAPPED lpOverlapped);
      

  3.   

    void CMyDoc::Serialize(CArchive& ar)//如果是已经保存到一个数组的话
    {
       if(ar.IsStoring)
            ar<<ncount;// 保存数组长度
            for(int i=0;i<ncount;i++)
               {
                ar<<MyArr[i];//保存数组中各个值
               }
       else
            ar>>ncount;//得到数组长度
            for(int i=0;i<ncount;i++)
                {
                 ar>>MyArr[i];//得到数据中的值,再在视图中进行处理
                }
    }
    这只是一个简单例子,详细分析见MSDN
      

  4.   

    用Serialize当然可以,
    如果想要更灵活的处理方式,
    那就用文件处理吧。
    最简单的当然是CFile。
      

  5.   

    void CMyDoc::Serialize(CArchive& ar)//如果是已经保存到一个数组的话
    {
       if(ar.IsStoring)
            ar<<ncount;// 保存数组长度
            for(int i=0;i<ncount;i++)
               {
                ar<<MyArr[i];//保存数组中各个值
               }
       else
            ar>>ncount;//得到数组长度
            for(int i=0;i<ncount;i++)
                {
                 ar>>MyArr[i];//得到数据中的值,再在视图中进行处理
                }
    }
    摘自whs1980(知秋一叶) 的回复