我已经有一些代码使用fscanf()读取文本文件,现在我需要修改它以使以前无空白的字段允许空格。文本文件基本上是这种形式:
```
title: DATA
title: DATA
等等...
```
基本上使用`fgets(inputLine, 512, inputFile); sscanf(inputLine, "%*s %s", &data);`解析数据字段并忽略标题,但现在一些数据字段需要允许空格。我仍然需要忽略标题和紧随其后的空格,但是然后读取剩余的行,包括空格。
有没有办法使用sscanf()函数做到这一点?
如果不行,那么我可以进行最小的代码更改来正确处理空格吗?
更新:我编辑了问题以将fscanf()替换为fgets()+ sscanf(),这实际上是我的代码正在使用的内容。当我第一次写问题时,我认为这不相关,所以我简化了它到fscanf()。
有没有办法使用sscanf()函数做到这一点?
如果不行,那么我可以进行最小的代码更改来正确处理空格吗?
更新:我编辑了问题以将fscanf()替换为fgets()+ sscanf(),这实际上是我的代码正在使用的内容。当我第一次写问题时,我认为这不相关,所以我简化了它到fscanf()。
scanf
解析它,那么您以前也可以解析类似于title: DATA title: DATA
(即全部在一行上)的内容。如果您想在值中允许空格,那么终止符将是什么?如果是换行符,那么似乎您的原始代码有点太松散了... - Pavel Minaevstr
缓冲区的大小,并确保它不会溢出? - Pavel Minaev