C fgets fread

头文件:include<stdio.h>
定义函数:har * fgets(char * s, int size, FILE * stream);
函数说明:fgets()用来从参数stream 所指的文件内读入字符并存到参数s 所指的内存空间, 直到出现换行字符、读到文件尾或是已读了size-1 个字符为止, 最后会加上NULL 作为字符串结束.
返回值:gets()若成功则返回s 指针, 返回NULL 则表示有错误发生.
 
头文件:#include <stdio.h>
定义函数:int fputs(const char * s, FILE * stream);
函数说明:fputs()用来将参数s 所指的字符串写入到参数stream 所指的文件内.
返回值:若成功则返回写出的字符个数, 返回EOF 则表示有错误发生.
    char s[80];
    FILE * in;
    FILE * out;
    in=fopen("123.txt","r");
    out=fopen("456.txt","w");
    fputs(fgets(s, 80, in), out);
 
    while (!feof(fp)) {//用foef(fp)函数来判断是否是文件末尾
        fgets(temp, 100, fp);//实际上最多读入99个字符 因为读入的一行的末位要存放'\0'
        puts(temp);
    }
 
fread()

size_t fread(void *buffer, size_t size, size_t count, FILE *fp)

从文件fp中读入count次,每次读size字节,读入的信息存在buffer指针指向的缓冲区。函数返回值等于实际读入的次数(可能少于count)。

fwrite()

size_t fwrite(void *buffer, size_t size, size_t count, FILE *fp)

将buffer地址开始的信息,写入count次,每次写size字节至文件fp中。函数返回值等于实际写入的次数(可能少于count)。

    while (i < n) {
        Node *newNode = (Node *) malloc(sizeof(Node));
        fread(newNode, sizeof(Node), 1, fp);
        printf("--%d,", newNode->data);
        i++;
    }
    fclose(fp);
参考:
http://blog.csdn.net/lmh12506/article/details/6656289
 
 
原文地址:https://www.cnblogs.com/cart55free99/p/2975867.html