CByteArrayFile -- A class used to serialize object with database field
Posted
by You HongJiang
on April 3rd, 1999
In this example, I will show you a class named CByteArrayFile. It is a derive class of CMemFile. With this class, we can serialize object into CByteArray object. And then, we can use DFX_Binary to transfter data into database "long binary" field.
Follwing is the sample code of how to use the CByteArrayFile class.
In the class which need to be serialize, such as CSomeClass.cpp
/////////////////////////////////////////////////////////////////////////////////////////////
CSomeClass::TransDataWithByteArray(CByteArray& byteArray, BOOL bStore)
{
CByteArrayFile byFile;
byFile.SetArray(&byteArray); // attach byteArray with byFile
if (bStore) // store object into byteArray
{
CArchive ar( &byFile, CArchive::store); // create CArchive object with CByteArray File
Serialize(ar); // Call CSomeClass::Serialize function
ar.Close();
}
else // load object from byteArray
{
CArchive ar( &byFile, CArchive::load);
Serialize(ar); // Call CSomeClass::Serialize function
ar.Close();
}
// important!!, detach byteArray with byFile. Or byteArray will be free with byFile
byFile.Detach();
}
In the file which used CDaoRecordset derived class such as CSomeDaoRecordset
///////////////////////////////////////////////////////////////////////////////////////////// CSomeDaoRecordset rs; // rs.m_byteLongField is a CByteArray class CSomeClass object; // 1. Write to record rs.Open(. . .); rs.AddNew(); object.TransDataWithByteArray(rs.m_byteLongField, TRUE /* store */); . . . rs.Update(); rs.Close(); // 2. Read from record rs.Open(. . .); object.TransDataWithByteArray(rs.m_byteLongField, FALSE /* load */); ... rs.Close();
Date Last Updated: April 3, 1999

Comments
How can I read data of memo type from an access database? Help me ! ! !
Posted by Legacy on 09/10/2003 12:00amOriginally posted by: shape
ReplyHow can I add the pictures to the database
Posted by Legacy on 07/02/2002 12:00amOriginally posted by: Alexber
Help pls !
ReplyI need to add the pictures from the file to DB and then read them again...
void SetFieldValue( LPCTSTR lpszName, const COleVariant& varValue );
How can I attach the picture to varValue ?
how can i create a table for storing images, movies and text file using sql?
Posted by Legacy on 04/18/2002 12:00amOriginally posted by: jim
will you kindly give me some help please?
Replyemployee record
Posted by Legacy on 02/17/2002 12:00amOriginally posted by: Omolayo M
I am trying to write an employee record that will retrieve picture from a table an nwind.mdb access file my problem is that after creating the formview I could bind everything with the exception of photo column to the formview is there any way in which you can help
ReplyNeed to Add SetFieldDirty(...) and SetFieldNull(...) to make it work
Posted by Legacy on 08/20/2001 12:00amOriginally posted by: chg
ReplyWill this code help to store the contents of a TXT file
Posted by Legacy on 07/26/2000 12:00amOriginally posted by: nizam
Hi,
Will you kind of kind help me store the content of a TXT file in the database. And when I retrieve and load the contents into TXT file will it be in the same format.
Please Confirm
West Wishes
ReplyNizam
Will this code help to store the contents of a TXT file
Posted by Legacy on 07/26/2000 12:00amOriginally posted by: nizam
Hi,
Will you kind of kind help me store the content of a TXT file in the database. And when I retrieve and load the contents into TXT file will it be in the same format.
Please Confirm
West Wishes
ReplyNizam
How can I store a bitmap in a mdb file?
Posted by Legacy on 07/05/1999 12:00amOriginally posted by: Tiger
I try to build a database,which has a field named "image",the data type is OLE Object.Then I drived a class from CDaoRecordSet(the DSN is the database I just build),Now I want to store a bitmap in this database,how can I do?
Reply