【发布时间】:2014-04-01 15:52:49
【问题描述】:
我正在尝试读取一个文件,该文件包含几行以 # 开头的信息,然后是数据列表。我需要对这些数据进行排序并计算行数,找到几列的最大数量,并打印我找到的每种文件类型的数量。除此之外,我需要避免空行。一个示例文件是:
# Begin
# File | Popularity | Uses | Name
asdf.exe | 4 | 280 | asdf
firefox.exe | 1 | 3250 | firefox.exe
image.png | 2 | 2761 | image
start | 5 | 100 | start
font.txt | 6 | 20 | font
smile.txt |3 | 921 |smile
注意:|代表长度未定的空格
我在尝试解释列之间的空格以及在每行内分隔整数和字符串以及考虑 # 和空白行时遇到了很多麻烦,所以我非常感谢任何建议,因为我被卡住了。我不想要任何实际的代码,而是开始构思。
【问题讨论】:
-
使用
fgets()读取整行。然后使用fscanf()将其与每个字段匹配。大多数fscanf()格式说明符方便地忽略前导空格,这正是您想要的。