TPs sur les entrées-sorties Java

Richard Grin (grin@unice.fr) Retour TPs


Ce TP reprend le TP sur les interfaces graphiques où un utilisateur modifie son mot de passe. Les mots de passe sont conservés dans un fichier texte.


Exercice 1 : Vérification d'un mot de passe

Les noms des utilisateurs et leurs mots de passe sont enregistrés dans un fichier des mots de passe. Pour simplifier vous supposerez que ce fichier des mots de passe est placé dans le répertoire courant (celui d'où est lancée l'application).

Le format du fichier des mots de passe : chaque ligne du fichier contient un nom et un mot de passe, séparés par un seul espace. Certaines lignes n'ont qu'un seul nom ; en ce cas, elles contiennent un nom d'utilisateur qui n'a pas de mot de passe. Dans l'exemple suivant, le mot de passe de toto est bibi, guest n'a pas de mot de passe :

guest
toto bibi
bibi truc
riri machin

Pour cet exercice vous modifierez la méthode nomEtMdpCorrect de la classe Utilisateur pour qu'elle utilise le fichier des mots de passe.

Correction :

Voir correction exercice 2


Exercice 2: Changer un mot de passe

Modifiez la méthode setMdp de la classe Utilisateur pour utiliser le fichier des mots de passe. Pour cela vous lirez tout le fichier ligne par ligne, ajouterez les lignes dans une variable de type StringBuilder (en modifiant au passage la ligne qui contient le mot de passe à modifier) et récrirez la valeur de la variable en entier sur le disque. Cette méthode lancera une AccesException si une IOException a été levée (gardez bien la cause première de l'exception).

Correction :

Utilisateur.java


Pour ceux qui ont déjà fini :

Allez étudier la sérialisation dans le cours qui vous a été distribué, dans le tutoriel de Sun ou sur un des nombreux sites qui la décrive (par exemple http://perso.wanadoo.fr/jm.doudoux/java/tutorial/chap020.htm). La sérialisation permet de sauvegarder un objet entier très simplement pour pouvoir le récupérer ensuite. Elle est très utile et elle est utilisée en particulier par Java pour les appels de méthode à distance (vers un objet qui se trouve sur un autre ordinateur) pour passer les valeurs des paramètres et la valeur de retour des méthodes. Vous pouvez aussi faire l'exercice sur la sérialisation du TP des années précédentes.

Vous pouvez aussi refaire le TP en utilisant un fichier des mots de passe écrit en format "binaire" (pas texte).



Retour TPs