C语言获取文件里面并输出内容

C语言获取文件里面并输出内容,第1张

文件内容读入和输出可以使用fscanf、fprintf。

如:

fscanf(fp,

"%d",

&num)

//从文件fp读入一个整数到num变量

fprintf(fp,

"%d",

num)

//将num变量的值输出到文件fp

屏幕也可以看作一个文件流,输入是stdin,输出是stdout,如输出到屏幕,就是:

fprintf(stdout,

"%d",

num)

先用将文件中所有内容读到二维字符数组buf[][]中。

要输出第x行的内容,直接输出buf[x-1]即可

全部读入还有一个好处,当要修改文件内容时,先读入数组,在数组中做修改,再写回文件,远比在文件中直接修改方便得多。

#include <stdio.h>

#define M 10010

#define N 256

char buf[M][N]

int main(){

    FILE *file

    char fileName[50] = "in.txt"//文件名

    //读入

    file = fopen(fileName, "r")//打开文件

    if(file == NULL) //打开文件失败

        return 1

    int n = 0

    while(fgets(buf[n], N, file) != NULL){//依次读取文件内容,第n+1行读到buf[n]中,直到读到文件结束

        n++

    }

    fclose(file)//关闭文件

    //显示第x行

    int i, x

    scanf("%d", &x)//读入要显示的是第几行

    printf("%s", buf[x-1])//显示该行

    //修改

    buf[0][0] = 'X'

    //...

    //写回

    file = fopen(fileName, "w")//打开文件

    if(file == NULL)//打开失败

        return 1

    for(i = 0 i < n i++)//buf中的内容写到文件

        fprintf(file, "%s", buf[i])

    fclose(file)//关闭并保存文件

    return 0

}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/7959216.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-12
下一篇 2023-04-12

发表评论

登录后才能评论

评论列表(0条)

保存