// Save current Excel workbook to a file. bool BasicExcel::SaveAs(const char* filename) { if (file_.IsOpen()) file_.Close(); if (!file_.Create(filename)) return false; if (file_.MakeFile("Workbook")!=CompoundFile::SUCCESS) return false; return Save(); } SaveAs的实现中已经有了if (file_.IsOpen()) file_.Close();为何也不行呢?
是不是最后应该调用Release函数?或者类似的?
在BasicExcel类里面添加个自定义函数就好了
save之后
Release()
搞定!void BasicExcel::Release()
{
if (file_.IsOpen()) file_.Close();
}
bool BasicExcel::SaveAs(const char* filename)
{
if (file_.IsOpen()) file_.Close(); if (!file_.Create(filename)) return false;
if (file_.MakeFile("Workbook")!=CompoundFile::SUCCESS) return false; return Save();
}
SaveAs的实现中已经有了if (file_.IsOpen()) file_.Close();为何也不行呢?
return Save();
所以释放不了
老兄,请教您个问题,小弟想问,为什么我的Save之后Release内存仍不释放掉呢?网上的人都说SaveAs没有问题,但是小弟如果循环SaveAs的话,每次都会刷新掉上一条保存的记录,着实令人崩溃啊!求老兄不吝指教一二,谢谢