delphi 如何分块 读取超大文件(>4GB) 哪有这样一次读取那么大的数据的,文件4G你一次就申请4G内存buff来装?更何况32位系统无法申请到4G内存。读取大文件都应该分块来读取,特别是网络传输,例如一次读取个50M处理50M,然后反复直到读完 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可能说的有误解 我现在就是 分块读取 一次 4096我用的indy 10var iFileHandle: integer; iFileLen, cnt: Int64; buf: array[0..4096] of byte; ........... iFileHandle := FileOpen(edtFileName.Text, fmOpenRead); iFileLen := FileSeek(iFileHandle, 0, 2); FileSeek(iFileHandle, 0, 0); cnt := FileRead(iFileHandle, buf, 4096);问题出在这里 >2G文件 buf全为0 <2G则正常 IdTCPClient1.IOHandler.Write(RawToBytes(buf,sizeof(buf)),cnt);问题出在 FileRead 现在我的代码传输<2GB文件没有问题 高手请进,小弟跪求cxgrid问题。。都已经搞了几天了,还没出来,请高手帮忙!!!!!!!!! 有谁知道:北京国电苏源信息技术有限公司 吗? 急!散分20,谁能告诉我什么地方可以免费下载delphi的源程序代码 两个问题都不会 自己定义的类的运算符重载的申明怎么写的? 用delphi做客户端的程序员能拿多少呢? 在delphi中在access数据库中创建表在表的问题(在线给分,) 求一个完整的ACSII码表。送分 大家看看这句话的意思 如何在窗口最小化的时候进行某项处理? Delphi 7制作登录窗口的问题 不知道为啥,delphi点F9运行就出错
我用的indy 10var
iFileHandle: integer;
iFileLen, cnt: Int64;
buf: array[0..4096] of byte;
...........
iFileHandle := FileOpen(edtFileName.Text, fmOpenRead);
iFileLen := FileSeek(iFileHandle, 0, 2);
FileSeek(iFileHandle, 0, 0); cnt := FileRead(iFileHandle, buf, 4096);问题出在这里 >2G文件 buf全为0 <2G则正常 IdTCPClient1.IOHandler.Write(RawToBytes(buf,sizeof(buf)),cnt);问题出在 FileRead 现在我的代码传输<2GB文件没有问题