c语言中如何使用txt文件中的数据变量

如题所述

在C语言中,通过使用fopen和fscanf函数可以从txt文件中读取内容,进行简单的操作。fopen函数的原型为:


FILE *fopen(const char *path, const char *mode);


其中,path参数指定了文件路径,而mode参数则指定了打开文件的方式。常见的模式有:



    r:以只读方式打开文件,且该文件必须存在。
    r+:以可读写方式打开文件,且该文件必须存在。
    rb+:以读写方式打开二进制文件,允许读数据。
    rw+:以读写方式打开文本文件,允许读和写。
    w:以只写方式打开文件,如果文件存在则文件长度清为0,即该文件内容会消失。如果文件不存在则建立该文件。
    w+:以读写方式打开文件,如果文件存在则文件长度清为零,即该文件内容会消失。如果文件不存在则建立该文件。
    a:以附加方式打开只写文件,如果文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留(EOF符保留)。
    a+:以附加方式打开可读写的文件,如果文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留(原来的EOF符不保留)。
    wb:只写打开或新建一个二进制文件,只允许写数据。
    wb+:读写打开或建立一个二进制文件,允许读和写。
    wt+:读写打开或建立一个文本文件,允许读写。
    at+:读写打开一个文本文件,允许读或在文本末追加数据。
    ab+:读写打开一个二进制文件,允许读或在文件末追加数据。

上述模式字符串都可以再加一个b字符,如rb、w+b或ab+等组合。加入b字符后,会告诉函数库打开的文件为二进制文件,而非纯文本文件。


返回值为文件指针。如果文件打开成功,将返回一个非NULL的文件指针。如果文件打开失败,则返回NULL,并将错误代码存储在errno中。


下面是一个使用fopen和fscanf的示例:


#include


#define F_PATH "d:\\myfile\\file.dat"


char c;


int main() {


FILE *fp = NULL;


fp = fopen(F_PATH, "r");


if (NULL == fp) return -1;


while (fscanf(fp, "%c", &c) != EOF) printf("%c", c);


fclose(fp);


fp = NULL;


return 0;


}

温馨提示:答案为网友推荐,仅供参考
相似回答
大家正在搜