如何在c中打印文本文件的内容
how to print the content of a text file in c
我正在尝试在 c 的终端中打印名为 text.txt 的文本文件的内容我有以下代码,但它不起作用:
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
int main(){
char str[255];
FILE *fp;
fp = fopen("text.txt","r");
while (fgets(str,255,fp)!=NULL){
printf("%s",str);
fclose(fp);
};
}
我找不到解决方法请帮忙
首先,您要在循环内关闭文件。 fclose
应该位于程序的末尾。其次,fopen()
可能会失败(例如,您没有读取文件的权限)。所以,别忘了处理它。
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
int main(){
const int sz = 255;
char str[sz];
FILE *fp;
fp = fopen("input.txt","r");
if(fp == NULL){
// opening the file failed ... handle it
}
while (fgets(str,sz,fp)!=NULL){
printf("%s",str);
};
fclose(fp);
}
这是另一种类似的方式
if (fp!=NULL)
{
// file open succeded. do sth with it.
fclose (fp);
}
希望这对您有所帮助并继续编码!
我正在尝试在 c 的终端中打印名为 text.txt 的文本文件的内容我有以下代码,但它不起作用:
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
int main(){
char str[255];
FILE *fp;
fp = fopen("text.txt","r");
while (fgets(str,255,fp)!=NULL){
printf("%s",str);
fclose(fp);
};
}
我找不到解决方法请帮忙
首先,您要在循环内关闭文件。 fclose
应该位于程序的末尾。其次,fopen()
可能会失败(例如,您没有读取文件的权限)。所以,别忘了处理它。
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
int main(){
const int sz = 255;
char str[sz];
FILE *fp;
fp = fopen("input.txt","r");
if(fp == NULL){
// opening the file failed ... handle it
}
while (fgets(str,sz,fp)!=NULL){
printf("%s",str);
};
fclose(fp);
}
这是另一种类似的方式
if (fp!=NULL)
{
// file open succeded. do sth with it.
fclose (fp);
}
希望这对您有所帮助并继续编码!