c - 在C中读取一行未知格式

标签 c string file scanf

我需要用 C 编写一个程序来读取文本,并将一个字母替换为另一个字母。我是编程新手,到目前为止我一直使用 fscanf 函数。 我如何在不知道格式的情况下阅读一行文本?

我什至不知道文件的长度...

这是我的“file.txt”:

Nel mezzo del cammin di nostra vita
mi ritrovai per una selva oscura,
ché la diritta via era smarrita.
Ahi quanto a dir qual era è cosa dura
esta selva selvaggia e aspra e forte
che nel pensier rinova la paura!
Tant' è amara che poco è più morte;
ma per trattar del ben ch'i' vi trovai,
dirò de l'altre cose ch'i' v'ho scorte.
Io non so ben ridir com' i' v'intrai,
tant' era pien di sonno a quel punto
che la verace via abbandonai.

我需要用一个“n”来改变每个“m”然后打印出结果。谢谢你的帮助

最佳答案

只需确定最大缓冲区长度并使用 fgets 读取它:

FILE *file = fopen(...);
char buffer[256];

fgets(line,256,file);

关于c - 在C中读取一行未知格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11143419/

相关文章:

c - I/O 内存区域重新映射

c - ‘(’ 之前的预期标识符或 ‘for’

java - 删除单词中等于单词中最后一个符号的所有符号

javascript - 带有空字段的 HTML 表

java - DefaultTableModel 正在保存到文件,但如何加载该文件以再次使用它?

android - 如何在 Android 中按文件名或日期按升序或降序对文件或文件夹进行排序?

sql - 使用 PostgreSQL ECPG 插入数组

C-动态内存

string - 如何将字符串值转换为正确的 reflect.Kind?

Android:写入失败:EPIPE(断管)写入文件时出错