*.jpeg图片转换成二进制保存到数据库中,然后在从数据库中读出转换成*.jpeg的图片(20分)

  • 主题发起人 主题发起人 zikao419
  • 开始时间 开始时间
用Image字段即可
 
FieldByName('Photo').Assign(jpg);//保存
Image1.Picture.Bitmap.Assign(TBlobField(FieldByName('Photo'))) ; //读取
 
先说下用的什么数据库!好吗?不同的数据库做法不同!
 
我想把其保存到具有64K大小的IC卡上。我们有配套的IC卡读写器。
 
帮顶!

╭=========================================╮

80G海量源代码,控件,书籍全免费狂下不停!

http://www.source520.com

╰=========================================╯
 
TFileStream* ComposedFile = new TFileStream(strName,fmOpenRead);
iFileLength = ComposedFile->Size; //文件的大小
//RzEdit5->Text = IntToStr(iFileLength);
Summation = Summation + iFileLength; //相同文件名的总大小
Size = Summation;
Main_DataModule->ADOQuery1->Last();
Main_DataModule->ADOQuery1->Append();
Main_DataModule->ADOQuery1->Edit();

Main_DataModule->ADOQuery1->FieldByName("MAP_ID")->AsString = IntToStr(MapId2);
Main_DataModule->ADOQuery1->FieldByName("MAP_FILENAME")->AsString = ExtractFileName(FileText);
Main_DataModule->ADOQuery1->FieldByName("MAP_EXTENDNAME")->AsString = strExtendedName;
Main_DataModule->ADOQuery1->FieldByName("MAP_SIZE")->AsFloat = iFileLength;
((TBlobField*)(Main_DataModule->ADOQuery1->FieldByName("MAP_CONTENT")))->LoadFromStream(ComposedFile);
Main_DataModule->ADOQuery1->Post();
保存图片 字段为Image类型, 下面为取出文件

TMemoryStream * ComposedFile = new TMemoryStream;

Main_DataModule->ADOQuery1->Close();
Main_DataModule->ADOQuery1->SQL->Clear();
Sql = "select * from "+TableName + " where MAP_ID = "+ MapId+";";
Main_DataModule->ADOQuery1->SQL->Add(Sql);
Main_DataModule->ADOQuery1->Open();

FileName = Main_DataModule->ADOQuery1->FieldByName("MAP_FILENAME")->AsString;
ExtendName = Main_DataModule->ADOQuery1->FieldByName("MAP_EXTENDNAME")->AsString;
((TBlobField*)(Main_DataModule->ADOQuery1->FieldByName("MAP_CONTENT")))->SaveToStream(ComposedFile);

PathName = Path+FileName+"."+ExtendName;
ComposedFile->SaveToFile(PathName);
delete ComposedFile;
return PathName;
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
839
SUNSTONE的Delphi笔记
S
后退
顶部