关于文件读写

fkeumtdh 2002-05-14 09:40:59
如何用windows API 进行文件的二进制读写
...全文
37 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
mygodness 2002-05-16
  • 打赏
  • 举报
回复
int应该是两字节吧!用fread和fwrite,应该没有问题
fread(first_buffer,sizeof(DWORD),32,fp);
romal 2002-05-14
  • 打赏
  • 举报
回复
dword是4字节,int也是四字节
fkeumtdh 2002-05-14
  • 打赏
  • 举报
回复
问题是我用的是DWORD类型呀
Chimae 2002-05-14
  • 打赏
  • 举报
回复
还有delete [] pBuffer;
那个catch(...)你自己家吧,是检测文件是否存在的!
Chimae 2002-05-14
  • 打赏
  • 举报
回复
int ifHandle;
int ifLength;
int ibRead;
char *pBuffer;
if(OpenDialog1->Execute()){
try{
ifHandle = FileOpen(OpenDialog1->FileName,fmOpenRead);
ifLength = FileSeek(ifHandle,0,2);
FileSeek(ifHandle,0,0);
pBuffer = new char(ifLength+1);
ibRead = FileRead(ifHandle,pBuffer,ifLength);
FileClose(ifHandle);
for(int i=0;i<ibRead;i++){
pBuffer[i];//取出来的数据
}
}
}
fkeumtdh 2002-05-14
  • 打赏
  • 举报
回复
倒~~~~~~~~~~~~~~~
这我也知道的呀
我想问的是我有一组数据,或者可以称为缓冲
DWORD first_bufer[32],second_buffer[64],third_bufer[128];
first_bufer[32]是要从文件中取出的数据缓冲区,
second_bufer[64]是处理过的数据
third_bufer[128]是最终写入另一个文件的缓冲区.
关键就是如何进行类行转换,和进行二进制读取与写入.
且以上数据缓冲区必须是DWORD
iec 2002-05-14
  • 打赏
  • 举报
回复
用c\c++ 可以实现:

#include <stdio.h>
读二进制文件:
fread("filename","r+b");
写二进制文件:
fopen("filename","w+b");




13,870

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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