[ itf @ 27.06.2008. 08:35 ] @
Pošto u MFC-u ne radim već nekoliko godina trebalo bi mi pomoć za kolegu. Uglavnom,

Code:
void CmfcgdiDoc::Serialize(CArchive& ar)
{
    if (ar.IsStoring())
    {
        /* ZADATAK: 
            Napraviti MFC serijalizaciju za spremanje u datoteku.
        */
    }
    else
    {
        /* ZADATAK: 
            Ovaj kod ovdje je sklepan da bi se umjesto prave serijalizacije iskoristila metoda ReadFromFile.
            On doista radi u što se možemo uvjeriti ako odemo na File/Open i otvorimo neku datoteku.

            Umjesto njega napraviti čitanje iz datoteke pomoću MFC serijalizacije.
        */
        CFile* file = ar.GetFile();
        CStringW filename (file->GetFilePath());
        this->ReadFromFile(filename);
    }
}



..e sad... ako itko točno kuži što ovdje treba napraviti neka se javi :)
[ deerbeer @ 27.06.2008. 09:18 ] @
Stvar je jednostavna i zasniva se na koriscenju operatora indirekcije << i >> klase CArchive ...
Slicno kao kod komandne linije sa cout i cin .

Code:

void CmfcgdiDoc::Serialize(CArchive& ar)
{
    if (ar.IsStoring())
    {
       //snimanje u datoteku  
        ar << variable1 ; 
        ar << variable2 ; 
     }
    else
    {
        //ucitavanje iz datoteke .. 
        ar >> variable1 ; 
        ar >> variable2 ; 
     }
}



Pogledaj ovde imas primer a ima ih jos mali milion na google-u :
http://www.informit.com/librar...isual_C_PlusPlus&seqNum=36

[ itf @ 27.06.2008. 13:45 ] @
hm... kao klasični (i)fstream. iako.. malo me zbunilo jer je spominjalo MFC serijalizaciju. Uglavnom.. thx