在C++中进行编程时,代码文件的操作是一个经常遇到的问题,在C++ Builder中,可以使用多种方法对文件操作,下面就对在C++ Builder里按以下几个部分对此作详细介绍,下面就进行一一列举出来:
1、基于C的文件操作;
2、基于C++的文件操作;
3、基于WINAPI的文件操作;
4、基于BCB库的文件操作;
5、特殊文件的操作。
在ANSIC中,对文件的操作分为两种方式,即流式文件操作和I/O文件操作,下面就分别介绍之。
1)流式文件操作
这种方式的文件操作有一个重要的结构FILE,FILE在stdio.h中定义如下:
- typedef struct {
- int level; /* fill/empty level of buffer */
- unsigned flags; /* File status flags */
- char fd; /* File descriptor */
- unsigned char hold; /* Ungetc char if no buffer */
- int bsize; /* Buffer size */
- unsigned char _FAR *buffer; /* Data transfer buffer */
- unsigned char _FAR *curp; /* Current active pointer */
- unsigned istemp; /* Temporary file indicator */
- short token; /* Used for validity checking */
- } FILE; /* This is the FILE object */
C++ Builder这个结构包含了文件操作的基本属性,对文件的操作都要通过这个结构的指针来进行,此种文件操作常用的函数如下:
- fopen() 打开流
- fclose() 关闭流
- fputc() 写一个字符到流中
- fgetc() 从流中读一个字符
- fseek() 在流中定位到指定的字符
- fputs() 写字符串到流
- fgets() 从流中读一行或指定个字符
- fprintf() 按格式输出到流
- fscanf() 从流中按格式读取
- feof() 到达文件尾时返回真值
- ferror() 发生错误时返回其值
- rewind() 复位文件定位器到文件开始处
- remove() 删除文件
- fread() 从流中读指定个数的字符
- fwrite() 向流中写指定个数的字符
- tmpfile() 生成一个临时文件流
- tmpnam() 生成一个***的文件名
【编辑推荐】