您的位置 电脑知识爱好者 >> 编程知识 >> C++ builder 的文件读写操作指南

C++ builder 的文件读写操作指南

电脑知识爱好者http://www.l9l8.com电脑知识爱好者2008-5-1 5:44:25
知识重点:C++ builder 的文件读写操作指南文件的操作是一个经常用到的问题,在C++Builder中,可以使用多种方法对文件操作,下面我就按以下几个部分对此作详细介绍,就是:  1、基于C的文件操作;  2、..
删除文件,原型是int remove(const char *filename); 参数就是要删除的文件名,成功返回0。

  例:remove("c:\\io.sys");

  13.fread()

  从流中读指定个数的字符,原型是size_t fread(void *ptr, size_t size, size_t n, FILE *stream);参数ptr是保存读取的数据,void*的指针可用任何类型的指针来替换,如char*、int *等等来替换;size是每块的字节数;n是读取的块数,如果成功,返回实际读取的块数(不是字节数),本函数一般用于二进制模式打开的文件中。

  例:

   以下是引用片段:
char x[4230];
  FILE *file1=fopen("c:\\msdos.sys","r");
  fread(x,200,12 ,file1);//共读取200*12=2400个字节
  14.fwrite()

  与fread对应,向流中写指定的数据,原型是size_t fwrite(const void *ptr, size_t size, size_t n, FILE *stream);参数ptr是要写入的数据指针,void*的指针可用任何类型的指针来替换,如char*、int *等等来替换;size是每块的字节数;n是要写的块数,如果成功,返回实际写入的块数(不是字节数),本函数一般用于二进制模式打开的文件中。

  例:

   以下是引用片段:
  char x[]="I Love You";
  fwire(x, 6,12,fp);//写入6*12=72字节
  将把"I Love"写到流fp中12次,共72字节
  15.tmpfile()

  其原型是FILE *tmpfile(void); 生成一个临时文件,以"w+b"的模式打开,并返回这个临时流的指针,如果失败返回NULL。在程序结束时,这个文件会被自动删除。

  例:FILE *fp=tmpfile();

  16.tmpnam();

  其原型为char *tmpnam(char *s); 生成一个唯一的文件名,其实tmpfile()就调用了此函数,参数s用来保存得到的文件名,并返回这个指针,如果失败,返回NULL。

2 )直接I/O文件操作

  这是C提供的另一种文件操作,它是通过直接存/取文件来完成对文件的处理,而上篇所说流式文件操作是通过缓冲区来进行;流式文件操作是围绕一个FILE指针来进行,而此类文件操作是围绕一个文件的“句柄”来进行,什么是句柄呢?它是一个整数,是系统用来标识一个文件(在WINDOWS中,句柄的概念扩展到所有设备资源的标识)的唯一的记号。此类文件操作常用的函数如下表,这些函数及其所用的一些符号在io.h和fcntl.h中定义,在使用时要加入相应的头文件。

  函数 说明

  open() 打开一个文件并返回它的句柄

  close() 关闭一个句柄

  lseek() 定位到文件的指定位置

  read() 块读文件

  write() 块写文件

  eof() 测试文件是否结束

  filelength() 取得文件长度

  rename() 重命名文件

  chsize() 改变文件长度

  下面就对这些函数一一说明:

  1.open()

  打开一个文件并返回它的句柄,如果失败,将返回一个小于0的值,原型是int open(const char *path, int access [, unsigned mode]); 参数path是要打开的文件名,access是打开的模式,mode是可选项。表示文件的属性,主要用于UNIX系统中,在DOS/WINDOWS这个参数没有意义。其中文件的打开模式如下表。

参与评论
相关内容
关于我们 | 隐私政策 | 站点地图 | 站长博客|京ICP备07025396号
添加到百度搜藏 添加到百度搜藏 电脑知识爱好者Copyright ?2006-2008版权所有 我要啦免费统计