在 GNU/Linux 下,使用以下文件 'foo.csv'(当然\r是 Mac 回车):
0,1,2,3\r
4,5,6,7\r
6,9,10,11\r
fgets函数将整个文件作为一行返回。如何指定fgets应将 \r 处理为换行符?
C 代码示例:
#include <stdio.h>
int main(int argc, char **argv) {
FILE *stream = fopen(argv[1],"r");
char tmp[1024];
int i=0;
while (fgets (tmp, 1024, stream) != NULL) {
printf("line %d\n", i);
i++;
}
}
我想避免通过转换\r => \n。