[英]Read - Write Txt File in C
我正在尝试阅读-写一个txt文件,该文件在不同的行中包含多个信息。 它的形式为:
Number-LicencePlate NumberOfSeats
Name number phonenumber
Name number phonenumber
Name number phonenumber
要读取第一行,使用fscanf很容易,但是如何使用fscanf读取其余的行以获得3个不同的变量(名称,编号,电话)?
以相同的形式写入此文件会在稍后阶段进行,但将尝试进行处理。
FILE *bus;
bus = fopen ("bus.txt","r");
if (bus == NULL)
{
printf("Error Opening File, check if file bus.txt is present");
exit(1);
}
fscanf(bus,"%s %d",platenr, &numberofseats);
printf("Bus Licence plate Nr is: %s and number of seats is: %d", platenr, numberofseats);
您应该使用循环来实现所需的功能,因为代码除了第一行"FILE *bus;"
以外没有读取任何内容"FILE *bus;"
是指向文本文件第一行的指针。
为了阅读所有内容,您可以通过检查文件结尾(EOF)使用简单的while循环。 我知道2种方法,它们在这里;
while(!feof(bus)){
fscanf(bus,"%s %d",platenr, &numberofseats);
printf("Bus Licence plate Nr is: %s and number of seats is: %d", platenr, numberofseats);
}
读取后,此代码块将打印每一行。 我们使用了“ feof(FILE * stream);”。 功能在此处了解更多信息 。 其他文章中还建议了其他方法如何阅读整个文本文件
但是我也将它放在这里。
while(fscanf(bus,"%s %d",platenr, &numberofseats)!=EOF){
printf("Bus Licence plate Nr is: %s and number of seats is: %d", platenr, numberofseats);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.