MFC中的文档-视图结构疑问2 我想在MFC生成的文档-视图结构程序中保存文档的内容以便下次使用,我的数据保存在文档的一个数组中,但系统封装的太厉害了.我不知到怎么去将整个数组保存到指定的文件内并且如果要读入或者合并文件都该如何实现?? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 WriteFile不就行了,或者用序列化 BOOL WriteFile( HANDLE hFile, LPCVOID lpBuffer, DWORD nNumberOfBytesToWrite, LPDWORD lpNumberOfBytesWritten, LPOVERLAPPED lpOverlapped); 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 用Serialize当然可以,如果想要更灵活的处理方式,那就用文件处理吧。最简单的当然是CFile。 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(知秋一叶) 的回复 内存dc绘图的问题:屏幕不能及时刷新。请高手指点 如何判断dll正被某个程序占用? UNICODE 版本? Listctrl简单排序 关于vc的一个问题 数组问题求救! 我想在cimagelist中把系统图标和自己程序中的BITMAP图标全部加入进去,以便在同一LISTCTRL中两者都可以显示,如何解决? 字符串问题:"aaa"+"-bbb"该怎么加? u盘初始化问题。C++ 如何以动态链接的方式使用dll中的类(非MFC) 关于VC里的头文件的安排问题 请教WINDOWS程序设计
HANDLE hFile,
LPCVOID lpBuffer,
DWORD nNumberOfBytesToWrite,
LPDWORD lpNumberOfBytesWritten,
LPOVERLAPPED lpOverlapped);
{
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
如果想要更灵活的处理方式,
那就用文件处理吧。
最简单的当然是CFile。
{
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(知秋一叶) 的回复