Je veux rechercher un fichier txt donné pour un nombre et retourner la ligne où il a été trouvé. Ce nombre peut avoir différents formats. Il peut être écrit avec un, ou. ou quelque chose de complètement différent. Je sais que le numéro d'entrée ressemble toujours à ceci: 100.50; 3424,00; 0.12 ...Java Rechercher un fichier .txt pour un nombre donné avec un format différent (100,50 ou 100,50)
Mon code actuel ne détecte ces numéros que s'ils sont dans une ligne sans autre caractère. Le code divise le nombre en deux parties (100.50 -> avant: 100 et arrière: 50). Ensuite, j'ajoute le caractère générique "." et utiliser la méthode correspond (avant + "." + retour)
Comment puis-je trouver le numéro s'il est dans une ligne qui n'est pas seulement le nombre?
Nous vous remercions de votre aide!
private static int searchTotal(String pictureID, String value) throws IOException {
int counter = 0;
String front = value.substring(0, value.length() - 3); //dividing the value into 100,50 -> 100 and 50
String back = value.substring(value.length() - 2);
BufferedReader br = new BufferedReader(
new FileReader(pathTXTFiles + "/" + pictureID +".txt")); //input txt
String s;
while ((s = br.readLine()) != null) {
counter++;
if (s.matches(front + "." + back)) { //searching with the wildcard
return counter; //counter gives me the line of the searched number
}
}
return 0;
}
Quelle est votre question? – Berger
Comment puis-je trouver le numéro s'il est dans une ligne qui n'est pas seulement le nombre –
Vous devrez autoriser d'autres caractères avant et après: '' s.matches (". *" + Front + "[., ] "+ back +". * ");' ' – f1sh