这非常简单,但我只是遇到了问题.
文本文件有一个标题,
例如,
# Avizo BINARY-LITTLE-ENDIAN 2.1
define Lattice 496 384 470
Parameters {
AlignTransform {
slice0000 0 -0 -30 -1,
slice0001 0 -0 -30 -1,
slice0002 0 -0 -30 -1,
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用fscanf读取每一行.
int i;
for ( i = 0; i < 10; i++ ) {
fscanf(fp, "%s\n", buf);
printf("%d) %s\n",i,buf);
}
Run Code Online (Sandbox Code Playgroud)
结果如此
0) #
1) Avizo
2) BINARY-LITTLE-ENDIAN
3) 2.1
4) define
5) Lattice
6) 496
7) 384
8) 470
9) Parameters
Run Code Online (Sandbox Code Playgroud)
所以它解析空格而不是换行符.不确定发生了什么.
我建议您使用fgets,但如果您坚持使用fscanf:
fscanf(fd, "%[^\n]\n", buff);
Run Code Online (Sandbox Code Playgroud)
这将读完整行.