|
|
发表于 2009-7-2 23:44:41
|
显示全部楼层
可以用fgets来读取一行,注意读取的字符串末尾包括换行符\n,也可以用ReadLine(不读\n)。如果行内不含空格,也可以用fscanf(不读\n),因为fscanf遇空格会结束。这几个函数遇换行符都会自动结束。
对文件的所有操作,其文件位置指针都会指向操作结束的位置,读取一行后指针已指向下一行,所以不必担心如何换行,继续读就是了。
至于分割字符串,可以用strtok(string, delimiter),string为待分割字符串的起始地址,delimiter为分割符。该语句逐个字符的进行对比,找到分割符或空格就把它换成NUL,结束,或遇NUL结束,位置指针指向分割符或空格后的字符,下一次分割应从这里开始。该语句返回指向分割成的字符串的指针。要完成所有分割,须用循环语句。例:
char string[]={"a,b,c,d"} *p;
p = strtok (string, ","); //语句结束后string值要改变
while (P != NULL)
{
strtok (NULL ,","); //从上一次分割的分割符后一字符开始继续
} |
|