在c++中如何用文件储存一个类对象,然后又能从该文件中读取这个对象出来? 20
3个回答
展开全部
你好,你这个要求可以通过MFC里面的串行化技术(Serialization技术)来实现:
在视图类中获得文档类指针的方法是:CFooDoc* pDoc = GerDocument();
用此文档指针便可以操作文档类数据:m_ViewData = pDoc->m_DocData;
串行化的代码很简单,ar 是一个与用户选择的文件相对应的文档对象(CArchive 对象):
// CFooDoc 序列化
void CFooDoc::Serialize(CArchive& ar)
{
if (ar.IsStoring())
{
// 将数据写入文件
ar << m_DocData;
}
else
{
// 从文件中读取数据
ar >> m_DocData;
}
}
这样就将数据写入了文件,选择“File”菜单中的“Save”或者“Save as”即可完成数据的串行化。 如果没有保存数据,退出程序是会提示用户是否保存修改过的数据
具体可在百度里面搜索 C++串行化 会有很多参考
在视图类中获得文档类指针的方法是:CFooDoc* pDoc = GerDocument();
用此文档指针便可以操作文档类数据:m_ViewData = pDoc->m_DocData;
串行化的代码很简单,ar 是一个与用户选择的文件相对应的文档对象(CArchive 对象):
// CFooDoc 序列化
void CFooDoc::Serialize(CArchive& ar)
{
if (ar.IsStoring())
{
// 将数据写入文件
ar << m_DocData;
}
else
{
// 从文件中读取数据
ar >> m_DocData;
}
}
这样就将数据写入了文件,选择“File”菜单中的“Save”或者“Save as”即可完成数据的串行化。 如果没有保存数据,退出程序是会提示用户是否保存修改过的数据
具体可在百度里面搜索 C++串行化 会有很多参考
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
串行化 ruby9997 说的差不多了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询