社区
Delphi
帖子详情
懂获得文件流的高手请进来拿分
nuaawenlin
2003-04-29 02:55:07
在使用CopyFile()的时候,我想获得正在拷贝的文件流,以便使用进度条来演示拷贝。就想电脑中要拷贝时一样,不知道使用什么函数,我试过FileString(),可是DELphi不承认,不知道还有没有别的函数。
...全文
38
5
打赏
收藏
懂获得文件流的高手请进来拿分
在使用CopyFile()的时候,我想获得正在拷贝的文件流,以便使用进度条来演示拷贝。就想电脑中要拷贝时一样,不知道使用什么函数,我试过FileString(),可是DELphi不承认,不知道还有没有别的函数。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
foreveryday007
2003-04-29
打赏
举报
回复
同意楼上,最好用文件流來實現,也簡單
李_军
2003-04-29
打赏
举报
回复
procedure CopyStream;
var
RStream: TFileStream;
WStream: TFileStream;
sFileName,WFileName: String;
LeftSize,CopySize: Integer;
begin
try
sFileName := frmMain.Edit1.Text;
if Trim(frmMain.Edit1.Text) = '' then
begin
Application.MessageBox('要拷贝的文件不能为空!','提示!',0);
Exit;
end;
WFileName := frmMain.Edit2.Text;
RStream := TFileStream.Create(sFileName,fmOpenRead);
// .........//
if FileExists(frmMain.Edit2.Text) then
begin
WStream := TFileStream.Create(WFileName,fmOpenReadWrite);
WStream.Position := WStream.Size;
RStream.Position := WStream.Size;
LeftSize := RStream.Size-WStream.Size;
CopySize := WStream.Size;
end
else
begin
WStream := TFileStream.Create(WFileName,fmCreate);
RStream.Position := 0;
LeftSize := RStream.Size;
CopySize := 0;
end;
//................//
frmMain.Gauge1.MaxValue := LeftSize div 1024;
frmMain.Gauge1.MinValue := 0;
frmMain.Gauge1.Progress := 0;
while LeftSize>0 do
begin
if LeftSize <1024 then
begin
WStream.CopyFrom(RStream,LeftSize);
CopySize := CopySize+LeftSize;
LeftSize := 0;
Gauge1.Progress := Gauge1.Progress+1;
end
else
begin
WStream.CopyFrom(RStream,1024);
CopySize := CopySize+1024;
LeftSize := LeftSize-1024;
Gauge1.Progress := Gauge1.Progress+1;
end;
RStream.Position := CopySize;
end;
finally
FreeAndNil(RStream);
FreeAndNil(WStream);
end;
end;
xiaoyuer0851
2003-04-29
打赏
举报
回复
最好用文件流结合内存流来解决问题!~~~
tpmao
2003-04-29
打赏
举报
回复
同意楼上!!!同意楼上!!!同意楼上!!!
5116888
2003-04-29
打赏
举报
回复
用TMemoryStream;
var
ams:TMemoryStream;
begin
ams:=TMemoryStream.create();
ams:=LoadFromFile(你的文件名);
end;
Java工程师系列课程之8--《Java
文件
与IO
流
》
前导课程: 《Java工程师系列课程》前4... 认真学习完本课程,学员可以深入掌握Java语言操作和管理磁盘
文件
的技术以及通过
流
读写数据的技术,实实在在提高实战水平,完成从菜鸟到
高手
的华丽转变。
搞
懂
这27个问题,让你秒变 Python
高手
!
搞
懂
这27个问题,让你秒变 Python
高手
!
转贴:黑客
高手
必
懂
基础内容 (发在这里只为娱乐大家)
转贴:黑客
高手
必
懂
基础内容 (发在这里只为娱乐大家) 黑客
高手
必
懂
基础内容一楼:DOS命令大全二楼:TCP端口:作用,漏洞,操作详析三楼:开始→运行→命令 集锦四楼:IPC$空连接的入侵和防御详解 五楼:GOOGLE搜索秘籍...
攻防世界-web
高手
进阶区
提示:这里是记录web的题目,这里我基本不讲很多细节,请自行下载Burpsuite,web使用的等等工具。 一、baby_web 非常的简单,bp抓包直接把1.php去掉后,就看的flag了。 二、Training-WWW-Robots 非常的简单,点...
JSON究竟是个啥
如果点进来的刚巧是个
高手
,那......你就当是过来做个鉴定的吧。很多从事数据分析工作的伙伴都是从“最简单”的神器—Excel开始入门的,对编程语言、计算机世界的很多工具都不甚了解。要做结构化的数据,就赶紧跑去...
Delphi
5,388
社区成员
262,730
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章