如何将自定义类中数据传递到Doc类,实现序列化的存储和读取?
以下是自定义类(该类基于CFormView)中serialize类:
void CNShep1::Serialize(CArchive& ar) 
{
        CFormView::Serialize (ar);
if (ar.IsStoring())
{
ar << m_Htpart << m_Htficture;
}
else
{
ar >> m_Htpart >> m_Htficture ;
}

}
m_Htpart 、m_Htficture 为类界面文本框变量。
请各位大虾不吝赐教!

解决方案 »

  1.   

    class CDoc
    {
      CNShep1* pCN;
    }//Get m_Htpart,m_Htficture
    pCN->m_Htpart;
    I  donotknow why  you write "CArchive".
      

  2.   

    用CArchive不行吗?
    我现在实现了数据序列化的保存,应用了CStringArray  m_strArray;类对象来保存数据。
    在Doc中的Serialize函数中:
    m_strArray.Serialize(ar);可以将我视图页面上的文本框中数据(CString类型)保存起来,我想请教一下如何读取出来啊?
      

  3.   

    先把文件打开,在序列化下就可以读取了
    CFile    file;
    if (file.Open("C:\\myfile.lst", CFile::modeRead)) 
    {
    CArchive ar(&file, CArchive::load);
    CNShep1 step;
    step.Serialize(ar);
                    //这里你就得到这两个变量的值了
                    //step.m_Htpart;
                    //step.m_Htficture ;
    //这里显示出来即可

    }