如何打开从用户基于C

问题描述:

输入的文本文件,我刚开始学习C,我试图让这种类型的代码:当运行时,它应该显示所有文本如何打开从用户基于C

Enter text file: cat.txt 

然后但如果它不是有效的文本文件,其应该抛出一个错误

+3

这很有趣。 – Downvoter

+0

阅读C课程怎么样?从控制台获取输入文本,打开,读取,打印文件内容是非常基本的,应该在许多例子中找到。顺便说一下,“有效的文本文件”是什么?它将取决于文本编码...在纯ASCII文本中,您可以检查每个字符的边界(请参阅ASCII文档),但在 - 让我们说 - utf-8它要复杂得多,然后您应该检查UTF8格式的文档。 – hexasoft

使用这样的事情

#include <stdio.h> 
#include <stdlib.h> 

int main() 
{ 
    char ch, file_name[25]; 
    FILE *fp; 

    printf("Enter the name of file you wish to see\n"); 
    gets(file_name); 

    fp = fopen(file_name,"r"); // read mode 

    if(fp == NULL) 
    { 
     perror("Error while opening the file.\n"); 
     exit(EXIT_FAILURE); 
    } 

    printf("The contents of %s file are :\n", file_name); 

    while((ch = fgetc(fp)) != EOF) 
     printf("%c",ch); 

    fclose(fp); 
    return 0; 
} 
+1

***请勿。使用。 GETS ***。即使手册页明确建议**反对它的使用! – Downvoter

+0

@cad不针对,但_removed_ :-) – ameyCU

+0

你会建议使用什么而不是获取 –