c - 将输入文件名保存为字符串? C

标签 c file input

我阅读了我能找到的所有帖子,但找不到确切的答案 - 所以我希望这不会被视为重复。

我的作业需要读入一个文件,进行一些字符串比较,并打印出该文件的名称。

这是非常基本的,输出只是以下格式:

*File where answer was found*
**Input1.txt** < file name

当我读入文件时,有什么方法可以将文件名保存为字符串吗?我对 C 还很陌生,所以我找到的很多答案(从文件描述等中获取)都超出了我的理解范围。

谢谢!

编辑 - 对于我提供的信息不足表示歉意。我这样想太多了。我正在寻找的东西很简单:

char filename[] = "input1.txt";
FILE *input = fopen("input1.txt","r");

最佳答案

好吧,为了打开一个文件,您必须将其名称(char *)作为参数传递给 fopen 或 open ...

那么为什么不保留该字符串(文件名),直到完成关键字查找并在需要时显示它。

例如,如果您打开这样的文件:

char 文件名[] = "file.txt"; FILE *fp = fopen(filename,"r");//打开文件名进行读取

//这里检查文件是否包含关键字 //如果是这种情况,则显示文件名

printf("%s",文件名);

如果您使用系统调用“open”,一切都会相同,但您将处理文件描述符而不是文件指针。

有关更多信息,请阅读 fopen/open 的手册。

关于c - 将输入文件名保存为字符串? C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29663804/

相关文章:

python - 在 Python 中一次打印文件中的字母 3 个字母

javascript - 格式为 hour.minute dayName day/month 的日期正则表达式

C - ctrl + 字符的输入测试

c++ - 对于每个标量 `T` ,是否可以保证存在相同大小的整数?

c - 是否可以将回调函数与 sqlite prepare v2() 结合使用

java - 比较 API/代码的文件

python - 使用 "with open() as file"方法,如何多次写入?

html - 无法使用文字输入

c - 我可以运行这个程序多少次

C 如何在后台运行循环