帮忙看看那里错了,在线等,不够可以加分

jmylf 2003-03-15 03:51:03
写入
Session->AddPassword("lf/9210");
if(!OpenDialog1->Execute())
return;
TMemoryStream *tmpStream = new TMemoryStream();
tmpStream->LoadFromFile(OpenDialog1->FileName);

Query1->Close();
Query1->SQL->Clear();
Query1->SQL->Add("INSERT INTO a.db (filename,filec,filedate) VALUES(:filename,:filec,:filedate)");
Query1->DatabaseName=ExtractFilePath(Application->ExeName).c_str();
Query1->ParamByName("filename")->AsString = ExtractFileName(OpenDialog1->FileName);
Query1->ParamByName("filedate")->AsString = savetime;
//ShowMessage(ExtractFileName(OpenDialog1->FileName));
Query1->ParamByName("filec")->LoadFromStream(tmpStream,ftBlob);
Query1->ExecSQL();
delete tmpStream;


写出
Session->AddPassword("lf/9210");
TMemoryStream *memStream = new TMemoryStream;
Query1->Close();
Query1->SQL->Clear();
Query1->SQL->Add("select filec ,filename from a.db");
Query1->Open();
//Query1->First();
TBlobField *tmpField = (TBlobField *)Query1->Fields->Fields[0];
while(!Query1->Eof)
{
tmpField->SaveToStream(memStream);
memStream->SaveToFile(Query1->Fields->Fields[1]->Value);

Query1->Next();
}
delete memStream;
}
...全文
42 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
jishiping 2003-03-15
  • 打赏
  • 举报
回复
刚才在另外一个帖子里不是已经解决了吗?

while(!Query1->Eof)
{
memStream->Clear(); //加上这一句
tmpField->SaveToStream(memStream);
//....
}
SharpKing515 2003-03-15
  • 打赏
  • 举报
回复
我帮忙,,UP…!!
kingfish 2003-03-15
  • 打赏
  • 举报
回复
加在
tmpField->SaveToStream(memStream);
之前
kingfish 2003-03-15
  • 打赏
  • 举报
回复
看看help

SaveToStream can be used to append the contents of Memory to a file stream, rather than replace the contents of the file the way SaveToFile does.

加一句
memStream->Position = 0;

jmylf 2003-03-15
  • 打赏
  • 举报
回复
帮忙顶顶啊
jmylf 2003-03-15
  • 打赏
  • 举报
回复
怎么今天没有人在吗
jmylf 2003-03-15
  • 打赏
  • 举报
回复
问题是写出的时候,前面文件的内容在后面的里面都有,很是讨厌

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧