回 帖 发 新 帖 刷新版面

主题:如何将磁盘数据文件读入内存

请问在C++Builder中,如何将磁盘文件读入内存?我的磁盘文件是一批数据,数据是Float型。各位大侠,小弟急用,拜托!谢谢。

回复列表 (共3个回复)

沙发

fread命令,配合fopen/fclose/fseek命令。

但我不知道,是否任何后缀名的磁盘文件都可以这么读?

板凳

使用fread命令,文件是流式文件,在打开方式中fopen的原形是fopen(*fp,const string,Origin).文件名的字符串是常量,要改变文件名必须在程序中改变,纯粹的C语言就是这样的,采用fscanf函数。但是我想做的是使用对话框控件,在程序运行过程中打开对话框中所选择的文件名。如果采用FileRead指令,只能一个个字节读进内存中。而一个浮点型数据占4个字节。FileRead指令读取二进制文件是可以的,但是读取ASCII码文件就是不行,读进内存的都是字符,比如磁盘上存放的是“3.1415926”,读进内存的形式就是'3' '.' '1' '4' '1' '5' '9' '2' 6' '\r' '\n'.内存中都放的字符。而非浮点型数据。这样很难办。
  不管怎样还是谢谢sopu7758!请大家在帮我想想办法。
  麻烦大家了!

3 楼

你用二进制格式保存你的数据好了。

另外,你可以根据保存的数据类型确定每次读多少数据进来,然后再处理。

我来回复

您尚未登录,请登录后再回复。点此登录或注册