如何读取一个double类型的数据文件! c++可以操作;是不是delphi不行呢?

lanren_me 2003-08-05 05:31:58
type dl=array of double;
var sf:String;
fhwnd,iFileLength,ln,integer;
dr:dl;
begin
if opendlg.Execute then
begin
sf:=opendlg.FileName;
fhwnd:=FileOpen(sf,fmOpenRead);
iFileLength := FileSeek(fhwnd,0,2);
FileSeek(fhwnd,0,0);
ln:=round((iFileLength+1)/sizeof(double));

setlength(dr,sizeof(double)*ln);

FileRead(fhwnd,dr,sizeof(double)*ln); //读取不到任何东西;都是0;

FileClose(fhwnd);
...

setlength(dr,0);

end;
end;
...全文
93 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
lanren_me 2003-08-06
  • 打赏
  • 举报
回复
谢谢各位:

jiju(UNCC) 的方法最快;

ljmanage(过客) 的方法可行;但是不切合实际;因为我的数据量有好几百万

一个个读那读到什么时候!

不管怎么说,问题解决了;

谢谢了;
李_军 2003-08-05
  • 打赏
  • 举报
回复
这样做
var
f: File of Double;
s: Double;
begin
assignFile(F,'c:\aa.dat');
reset(f);
while not eof(f) do
read(f,s); //然后做相应操作
closeFile(F);
end;
jiju 2003-08-05
  • 打赏
  • 举报
回复
试试
FileRead(fhwnd,dr[0],sizeof(double)*ln);

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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