Bonjour a tous.
Ça fait 2 jours je suis en train de m'arracher les cheveux pour trouver une solution a comparer ces deux types de données.
C'est le dernier élément qu'il me manque pour terminer mon projet d'afficheur d'appel sur écran LCD 20x4.
Voici mon code :
Code:volatile int NB_CALLER_TO_BLOCK = -1; String result[12]; // max : 12 no qu'on peut bloquer pour l'instant = amplement suffisant!!! char num[12]; // no de l'appel entrant void Verifie_Information_Dans_SD() { openFile(FILE_CALL_BLACKLIST); // ouvre le fichier "blackl.txt" // compteur le nombre de lignes dans le fichier while(readLine()!= "") NB_CALLER_TO_BLOCK++; // compte les lignes du fichier sd pour savoir combiens d'appels il faudra bloqué.. closeFile(); // ferme le fichier openFile(FILE_CALL_BLACKLIST); // ré-ouvre le fichier "blackl.txt" // lit toutes les lignes du fichier et les mets dans le tableau de String result[i] for (int i=0;i<NB_CALLER_TO_BLOCK;i++) result[i] = readLine(); closeFile(); // ferme le fichier for (int i=0;i<NB_CALLER_TO_BLOCK;i++){ if (String(num) == result[i]){ // compare le no de l'appel entrant avec les no bloqués qui sont inscrits dans le fichier BLACKL.txt sur la carte micro-SD lcd.clear(); lcd.setCursor(0,0); lcd.print("NO BLOQUE!"); // il n'arrive jamais la :-( //delay(120000); break; } } //////////////////////////////////////////////// bool initializeSD(){ Serial.println(F("Initializing SD card...")); pinMode(CS_PIN, OUTPUT); Serial.print(F("Initializing SD card...")); if (!SD.begin(CS_PIN)) { Serial.println(F("initialization failed!")); return false; } Serial.println(F("initialization done.")); return true; } int createFile(char filename[]) { file = SD.open(filename, FILE_WRITE); if (file) { lcd.setCursor(0,0); lcd.print("File created!"); Serial.println(F("File created successfully.")); return 1; } else { lcd.setCursor(0,0); lcd.print("File not created!"); Serial.println(F("Error while creating file.")); return 0; } } int writeToFile(char text[]) { if (file) { file.println(text); Serial.println(F("Writing to : ")); return 1; } else { Serial.println(F("Couldn't write to file")); return 0; } } void closeFile() { if (file) { file.close(); Serial.println(F("File closed")); } } int openFile(char filename[]) { file = SD.open(filename); if (file) { Serial.println(F("File opened with success!")); return 1; } else { Serial.println(F("Error opening file...")); return 0; } } String readLine(){ String received = ""; char ch; while (file.available()) { ch = file.read(); if (ch == '\n') { return String(received); } else { received += ch; } } return ""; }
-----