Verif pdeudo et login sur fichier txt
Fermé
laurent2403
Messages postés
80
Date d'inscription
jeudi 11 novembre 2010
Statut
Membre
Dernière intervention
23 février 2020
-
1 oct. 2012 à 09:13
laurent2403 Messages postés 80 Date d'inscription jeudi 11 novembre 2010 Statut Membre Dernière intervention 23 février 2020 - 1 oct. 2012 à 20:42
laurent2403 Messages postés 80 Date d'inscription jeudi 11 novembre 2010 Statut Membre Dernière intervention 23 février 2020 - 1 oct. 2012 à 20:42
A voir également:
- Verif pdeudo et login sur fichier txt
- Fichier rar - Guide
- Fichier host - Guide
- Fichier iso - Guide
- Comment réduire la taille d'un fichier - Guide
- Ouvrir fichier .bin - Guide
2 réponses
KX
Messages postés
16734
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
24 avril 2024
3 015
1 oct. 2012 à 10:42
1 oct. 2012 à 10:42
Je pense que l'erreur vient du fait que getPassword renvoie un char[] et que tu le compares à pseudo qui est un String. La méthode equals renverra false à cause de la différence de type, il faudrait faire :
Par contre je ne vois pas trop pourquoi tu utilises le nom de variable "pseudo" pour contenir le mot de passe, c'est un peu troublant.
Je te conseilles, de manière général, d'utiliser le plus de méthodes static possible, lorsque tu effectues un traitement intérmédiaire qui ne nécessite pas d'accès aux attributs de l'objet. Voici un exemple, qui permet également de ne lire qu'une seule fois le fichier, en gardant en mémoire la liste des mots de passe.
new String(getPassword()).equals(pseudo)
Par contre je ne vois pas trop pourquoi tu utilises le nom de variable "pseudo" pour contenir le mot de passe, c'est un peu troublant.
Je te conseilles, de manière général, d'utiliser le plus de méthodes static possible, lorsque tu effectues un traitement intérmédiaire qui ne nécessite pas d'accès aux attributs de l'objet. Voici un exemple, qui permet également de ne lire qu'une seule fois le fichier, en gardant en mémoire la liste des mots de passe.
private static Map<String,String> map = null; private static final File fichier = new File("comptes.txt"); private static boolean controleFichier(String nom, String mdp) { if (map==null) // Création de la liste des mots de passe { map = new TreeMap<String,String>(); Scanner sc = new Scanner(fichier); while (sc.hasNextLine()) { String[] tab = sc.nextLine().split(";"); map.put(tab[0],tab[1]); } sc.close(); } return map.containsKey(nom) && map.get(nom).equals(mdp); } private boolean Control_Fichier() { try { return controleFichier(jTXT_Nom.getText(), new String(jPWD_MDP.getPassword())); } catch (Exception e) { e.printStackTrace(); return false; } }
laurent2403
Messages postés
80
Date d'inscription
jeudi 11 novembre 2010
Statut
Membre
Dernière intervention
23 février 2020
2
1 oct. 2012 à 20:42
1 oct. 2012 à 20:42
ok merci KX...