读取文件的时候,多余的字符(比如读取经纬度数据,通常我们都不需要 度 分 秒的符号)、空格和换行符是一件令人头疼的事情。以前也遇到过同样的问题,但由于都是一些小数据,多半我只是将数据中的不规则字符去掉,不愿意从语言的角度深挖一步,自己确实是过于懒惰了。
下面是一个数据文件的内容,格式是: 学号:分数 但之间会有不规则的空格。文件末尾还有很多空格和换行符。
465566339:9
12345: 12
523 : -12
241251 : 5
3201234123: 7
0: 13
53452: -7
322123:2
1222702060 : 12
fscanf(infile, " %u : %d /n", &id, &points);
通过在输入参数前后加空格,就能将任意数量的空格过滤掉,当然其他字符也是一样。
附带吗如下