Как прочитать данные, контактный нашли и не нашли пин-код из файла?
#include <stdio.h> #include <string.h> #include <stdlib.h> #define STRING_LEN 200 char string[STRING_LEN], pinFind[STRING_LEN]; char * lineOne = NULL, *pinFound = NULL, *numbers[5]; int i; char *read(FILE * fname, char * findPin){ while(fgets(string, STRING_LEN, fname)){ lineOne = strtok(string, "\n"); pinFound = strstr(lineOne, pinFind); numbers[0] = strtok(lineOne, ","); for(i = 1; i < 5; i++){ numbers[i] = strtok(NULL, ","); } if(pinFound) return string; if(!pinFound) return string; } return 0; } int main(){ FILE * fp1 = fopen("file.csv", "r"); printf("Enter your Pin Code: "); scanf("%s", pinFind); read(fp1, pinFind); for(i=0; i<5; i++){ printf("Here is: %s\n", numbers[i]); } return 0; }
Что я уже пробовал:
В этом коде я пытаюсь заставить "pinFound " и"! pinFound` работать одновременно. Но это просто дает мне результат " pinFound`
И когда я использую другой оператор if и ввожу pin-код из первой строки файла, он дает мне данные первой строки, но мне нужны исключительные данные pin-кода. А если ввести пин-код из второй строки файла, то он работает и выдает мне данные первой строки.
Data in the file Bilal Khan,1111111111111,1122,1000,12255334 Ali Ahmed,2222222222222,2233,2000,66778899 Expected result Both results have a pin code but one is found and another is not. Enter your Pin Code: 1122 Pin found...... Here is: Bilal Khan Here is: 1111111111111 Here is: 1122 Here is: 1000 Here is: 12255334 Pin not Found... Here is: Ali Ahmed Here is: 2222222222222 Here is: 2233 Here is: 2000 Here is: 667788994