:: Enseignements :: Master :: Master TTT :: 2012-2013 :: Programmation réseau en Java ::
![[LOGO]](http://igm.univ-mlv.fr/ens/resources/mlv.png) | Sur les flots javanais |
Exercice 1 - Cache de résolution
On souhaite proposer un résolveur de noms de domaine qui implante un cache. Le cache prend la forme d'un répertoire contenant pour chaque domaine résolu un fichier éponyme. Ce fichier contient toutes les adresses IP associées au domaine.
- Implanter un résolveur sans la fonctionnalité de cache (prenant pour argument le nom à résoudre et affichant la liste des adresses associées).
- Enregistrer après une résolution, dans un fichier de chemin adéquat, les adresses IP résolues. Pour simplifier, on pourra ne considérer que les adresses IPv4 que l'on stockera sous forme d'octets séquentiellement dans le fichier.
- Lorsque la résolution d'un nom est demandée, vérifier si le résultat est déjà présent sous forme d'une fichier dans le cache. Si c'est le cas, récupérer son contenu plutôt que de redemander une résolution avec InetAddress.getAllByName(String).
Exercice 2 - Transcodage
Nous voulons convertir un fichier texte d'un jeu de caractères vers un autre.
- Implanter une classe Transcoder réalisant le transcodage. La méthode main() réceptionnera un tableau avec les arguments suivants : chemin du fichier source, charset du fichier source, chemin du fichier destination, charset du fichier destination.
- Que se passe-t-il si les chemins du fichier source et destination sont identiques ?
- Tester le transcodeur sur quelques exemples. On pourra utiliser un éditeur hexadécimal afin d'observer les fichiers transcodés. Essayer également de transcoder des fichiers contenant des caractères non disponibles dans le jeu de destination (par exemple des idéogrammes chinois "我喜歡Java編程" d'UTF-8 vers iso-8859-15).
- Ajouter une option permettant d'inverser la casse du texte (les majuscules deviennent des minuscules, les minuscules des majuscules). Indice : regarder les méthodes statiques de la classe Character
© Université de Marne-la-Vallée