从以下格式的文本文件:
Name Surname ID Address
Name Surname ID Address
Name Surname ID Address
我需要提取每一个并将其放入一个变量中。
我尝试了以下两种方法:
while(fscanf(fp, "%s,%s,%d,%s\n", name2,surname2,&id2,address2) != EOF){
printf("Name: %s, Surname: %s, ID: %d, Address: %s\n",
&name2, &surname2, &id2, &address2);
}
这给了我错误的结果,它每行只读取一个单词,所以结果是这样的:
姓名:姓名 姓氏:@,身份证号:2272012 地址:?” 姓名:姓 姓:@,身份证:2272012 地址:?” 姓名:ID 姓氏:@,a ID:2272012 地址:?” 姓名:地址姓氏:@,ID:2272012 地址:?”
我使用的另一种方法是:
while(fscanf(fp, "%s,%s,%d,%s\n", name2,surname2,&id2,address2) == 4){
printf("Name: %s, Surname: %s, ID: %d, Address: %s\n",
&name2, &surname2, &id2, &address2);
}
什么也没读,什么也没发生。
我正在读取的文件是 .dat,它用于分配,因此只能使用 .dat。