说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

如何在数据库中存放avi文件-Delphi资料

HTML文档下载 WORD文档下载 PDF文档下载
如何在数据库中存放avi文件-Delphi资料

对blob字段的操作只能通过流操作实现,即根据需要先创建一个流,这个流可能是内存流或者是文件流,也可能是其他类型的流。这里流是操作BLOB的通道:通过特定的操作,将BLOB的数据和流中的数据交换,然后再对流数据处理

var

filename:string;

//这里是从系统中取得一个临时文件

function GetTemporaryFileName:string;

//$IFNDEF WIN32

const MAX_PATH=144;

//$ENDIF

var

//$IFDEF WIN32

lppathBuffer:PChar;

//$ENDIF

lpbuffer:PChar;

begin

GetMem(lpBuffer

MAX_PATH);

//$IFDEF WIN32

GetMem(lpPathBuffer

MAX_PATH);

GetTempPath(MAX_PATH

lpPathBuffer);

GetTempFileName(lpPathBuffer

'tmp'

0

lpBuffer);

FreeMem(lpPathBuffer

MAX_PATH);

//$ELSE

GetTempFileName(GetTempDrive('C')

'tmp'

0

lpBuffer);

//$ENDIF

result:=StrPas(lpBuffer);

FreeMem(lpBuffer

MAX_PATH);

end;

//将一个AVI文件写到一个BLOB字段中

Procedure TForm1.Button1Click(Sender:TObject);

var

FileStream:TFileStream;// 将入的AVI文件

BlobStream:TBlobStream;//保存的BLOB流

begin

Application.ProcessMessage;

Button1.Enabled:=false;

Button2.Enabled:=false;

FileStream:=TFileStream.Create('C:\PROGRA~1\BORLAND\DELPHI~1\DEMOS\COOLSTUF\COOL.AVI'

fmOpenRead);

Table1.Edit;

//为Table1AVI字段创建一个BLOBSTREAM

BlobStream:=TBlobStream.Create(Table1AVI

bmReadWrite);

//移动到STREAM的首位

BlobStream.Seek(0

soFromBeginning);

//清空数据流

BlobStream.Truncate;

//将FILESTREAM的内容拷贝到BLOBSTREAM

BlobStream.CopyForm(FileStream

FileStream

size);

//释放流

FileStream.Free;

BlobStream.Free;

//添加记录

Table1.Post;

//使buttons可用

Button1.Enabled:=true;

Button1.Enabled:=true;

end;

// 从BLOB字段中读取一个AVI,然后播放这个文件

Procedure TForm1.Button2Click(Sender:TObject);

var

FileStream:TFileStream;

BlobStream:TBlobStream;

begin

//为AVI字段创建BLOB数据流

BlobStream:=TBlobStream.Create(Table1AVI

bmRead);

if BlobSteam.Size=0 then begin

BlobStream.Free;

Exit;

end;

// 关闭media player

MediaPlayer1.Close;

//重值文件名

MediaPlayer1.FileName:='';

//刷新显示窗口

MediaPlayer1.Display:=Panel1;

Panel1.Refresh;

//创建前删除同名的临时文件

if FileName<>'' then

DeleteFile(FileName);

//设置临时文件名

FileName:=GetTemporaryFileName;

//为临时文件创建文件流

FileStream:=TFrileStream.Create(FileName

fmCreate or fmOpenWrite);

//拷贝BLOB到临时文件

FileStream.CopyFrom(BlobStream

BlobStream.Size);

//释放流

FileStream.Free;

BlobStream.Free;

//设置Media Player播放AVI文件

MediaPlayer1.FileName:=filename;

MediaPlayer1.DeviceType:=dtAviVideo;

MediaPlayer1.Open;

MediaPlayer1.Play;

end;

procedure TForm1.FormDestroy(Sender:TObject);

begin

//取消临时文件和media player的关联

MediaPlayer1.Close;

MediaPlayer1.FileName:='';

//删除临时文件

if fileName<>'' then

DeleteFile(FileName);

end;

UCloud联手盛科实现SDN硬件应用 AWS,还有多远? Instagram推新私信功能Direct:支持照片、视频和文本信息 微软CEO鲍尔默最后一次受访:我的正确决定远远大于过错 中国创新碰撞硅谷思潮, 2013云世界大会定义云时代 Mozilla与设备商、运营商成立开放Web设备联盟 研发周报:暴露程序员身份的8个行为 专访“月熊志”公益网站技术负责人:利用技术的力量保护动物 【Hadoop技术博客推荐】站在风口的Hadoop技术研究者 2014趋势预测,大数据将成主流 国人当自强:两岸三地在线编程学习网站大搜罗 一周消息树:微软畏惧Chromebook、苹果失去优秀工程师 Google Dart语言开启标准化历程,取代JavaScript仍艰难 11款网站死链检测工具 谷歌Chromecast 2014:开放SDK、建生态系统 大举进攻客厅 优秀程序员的6个共同特质 开源的力量:“中国杯”游戏极限开发大赛 GNOME.Asia 2014年峰会时隔六年重返北京 JavaScript社区开发者调查:服务端JS盛行,Backbone.js使用最多 为什么开发者担心将代码公布 【投稿】移动互联网初创团队7大云计算服务实践分享 云计算发展越快,中小IDC发展机遇越好 前富士康CEO程天纵:创客与资本间并无矛盾 【开源专访】Java高效开发框架Nutz:是SSH的轮子?还是新神器? 仿Google Now和Siri?微软WP8.1将推语音助手Cortana NodeJS无所不能:细数10个令人惊讶的NodeJS开源项目 【快讯】18-19日,亚马逊AWS负责人Andy Jassy会在北京说什么,做什么? 数据库未来的5大预测 华为王丰谈华为一体机三大优势 FusionCube SQL Server针对Windows集群加速 浏览器基准测试:IE11成绩惊人 移动开发工具访谈《近匠》第02期:梆梆安全——APP安全之道 在系统权限中,create any table 和create table 我搞不清,查了书本也是迷糊,请帮我解释一下! 如何让BCB运行时不自动创建一个新工程? 问题青年来了 : 怎么把一个Win32 Application 改成ActiveX啊?解决了给你100分 新装宽带,征集防火墙方案 垃圾收集 在什么时候发生? 一个数据备份与还原路径合法的问题(50分)在线等待 将字符串中第i个字符删除? 什么函数返回ASCII码的对应的字符 Rose中Class Diagram中的几种类,我不清楚阿 给我一点对perl/python的初步认识 真有这样的事? 如何对jpg文件进行像素处理? 如何用正则表达式不区分大小写的匹配“<script ...>...</script>”? 为啥我得机器不能access 请教一个简单的问题 这样为什么不能加入记录,怎样加 请问,我想用两台2000共用一个ip上网,一个做iis服务器,另外一个做传奇的服务器。谁知道怎么做啊。 菜单拖动事件 使用TCP/IP编程是怎么一回事? 珊珊艾的玉照放出来啦!! 语句extern "C" AFX_EXT_API int WINAPI ExecSQL( CString strSQL ); 怎么理解?关键字AFX_EXT_API有何用? 急,怎么将String中的"/"替换成"\"? 四川的分数出来了吗? 关于MSFlexGrid的一个问题 高分求购经典旧书配本源码 《Windows编程指南》,清华出版社,成功后立马送分 关于百度插件问题 怎样用Request.QueryString("k")的值和select pass from c while pass=44的结果比较 关于在QR中横向打印的问题........... 为什么有的网站明明是用了数据库,但是网页文件却是.html的? 如何实现数据库中的图片存储 select ???? 这怎解决啊,Help!!!! 如何将结构相同的两表的数据合并? 建立一个简单的网上直播服务器需要那些步骤? 请教一个关于属性页的问题 可以这样查询吗 ?请问怎么出现设置目录的对话框,并且把路径保存edit中!!急急急急急急急(lxjgyl82) 关于监考管理 怎么通过ado动态的连接数据库 web服务器控件和html服务器控件有什么区别 合肥工業大學爆发學潮 Java程序监听数据库的操作 串口 对DBNavigator组件的操作,请大家帮忙 怎么看历史短消息啊?原来有的怎么看啊? 一个sql的意义! 我在程序启动时所出现的封面如果关闭程序? vc环境下如何外部调用exe可执行文件?最好给个例子。 校园性喻 (转自罗斯文) 大放分,我加三角(可惜总分也就10分,全给了~~~)——> 拨号服务器问题,这样怎么不能实现代理上网???立即给分相谢!!! 调查:65%大学生第一份工作持续时间宁波中考加分政策出台 竞赛类比赛最高叙大使坚决否认化武指控 称允许调查三男子举报妻子被市领导包养 涉事人大副上市银行“问题网点”整改及时郊区网点福建省部署防御第15号强热带风暴“康余姚查获近万瓶假冒洗沐用品 涉及潘婷杭州下沙一工厂发生化学气体泄漏事故 人民币对美元汇率中间价下跌23个基点中国曲艺家代表团亮相丹麦杭州德胜高架西落地工程动工浙江玉环打造中国唯一人工滨海湿地俄总统普京亲赴远东洪灾区 现场评估灾美国银行美林证券种族歧视案赔偿金数额新加坡飞印尼班机因当地烟霾恶化被迫返俄称军事干预叙利亚系“公开挑战”联合奥巴马指认叙政府使用化学武器但尚未决叙总统工作未受西方动武影响 每晚下榻德国经济部长预计希腊仍需数百亿欧元援日媒称安倍要在美国华尔街讲“安倍经济俄称军事干预叙利亚系“公开挑战”联合去繁就简、丝滑体验从氢开始。什么笔记本玩游戏最好?它堪称“游戏本李克强总理花10元买一只3D打印小熊孔令丰连胜美韩拳坛高手 周口见证中国以“五个过硬”培育造就政法队伍国台办:否定“九二共识”意味着改变两国台办:尊重国际组织按章程与规定处理五年规划发布 中国机器人产业站上“风中国与美国,同样的世界,不同的命运青铜器存世与价值李嘉诚要分一杯羹?豪掷13亿美元押注中小型企业门户网站如何制定运营推广策董卿一岁儿子曝光,与富商密春雷传闻终布登神变招弄晕少帅!这是东部版的波波赤天化600227:趋势平缓,后期有美国国务院:第八轮中美战略与经济对话东盛金鼎:原油投资中投资策略的重要性大风过后,近百名市民被刮伤眼在六安感受传统工艺制茶的魅力捞鱼捞到宝丨一次出船竟然能创收一个亿哪些面相的人会拼命赚钱
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘