读取文件中间的单个单词

时间:2016-06-12 09:15:40

标签: c file io

我需要制作一个程序来输入一个.db文件:

Boston 685463 2413
Cleveland 781221 3890
Chicago 468923 2781
LosAngeles 618292 1902
NewYork 38723 567

第一组数字是选举中的选民数量,第二组是白板数量。

用户可以插入三种输入:

./program CityName
./program voters
./program white

第一个输入必须打印出类似的内容:

./program Boston
Boston 685463 2413

第二个必须打印选民总数,第三个打印白色borard总数。

如何从文件中取出单个单词或数字集来做到这一点?

2 个答案:

答案 0 :(得分:0)

使用fscanf逐行循环遍历文件(需要一个字符串和两个数字(long / int / etc取决于所需的数字大小))

在每次迭代时检查三个值中的一个是否与您的查询匹配。如果是,请打印结果并break循环。

答案 1 :(得分:-1)

您可以创建一个包含城市名称,第一个和第二个数字的结构数组,然后使用bsearch搜索它(如果它按名称排序,在我看来就像它一样)之后只需打印来自found的数据结构