Previous Up

Points de programmation

Comment est interprete une tabulation d'un texte source en String dans
java lors de la lecture?
C'est le caractère “\t”. J'avoue ne pas trop savoir ce que ça fait en HTML. Dans le doute je dirais que c'est un blanc normal, à répliquer dans la sortie comme une tabulation.
Une dernière remarque concerne la capacité de stockage dans un String
de Java. Le dernier exemple de page à tester était sûrement destiné à
toucher du doigt cet te difficulté. Mais je pense que si on ne
s'occupe que des zones de texte, il y a moyen de fragmenter le travail
sans difficulté et donc de résoudre ce probleme. Qu'en pensez-vous?
Je ne comprends pas trop votre question. Mais il me semble que mettre tout le fichier lu dans une chaîne n'est pas une bonne idée. Les exemples d'analyseurs lexicaux donnés dans la page de suivi devraient vous indiquer comment procéder.
nous avons besoin de précisions sur le fonctionnnement de
la fonction "system.in". Plus précisément, nous aurions besoin de
savoir comment donner des arguments à cette fonction afin qu'elle
prenne en compte le code HTML de la page en question.
Je ne comprends pas trop non plus. System.in est un objet de la classe InputStream, vous vous en êtes déjà servi selon la démarche décrite sous le titre : Lire ce qui est tapé dans le TP sur l'analyse lexicale.

Bon en fait j'aime pas cette technique qui court-circuite les conversions des octets du flot d'entrée en caractères Unicode. Une démarche plus usuelle est de faire un “Reader” à partir de l'entrée standard. Un Reader est essentiellement un objet équipé d'une méthode “read” pour lire caractère par caractère. Voici par example un petit programme simple qui fait l'écho de l'entre standard sur la sortie standard.
import java.io.*; // La classe Reader est dans le package java.io class Cat { public static void main(String [] args) { Reader entree = new InputStreamReader(System.in) ; try { for (;;) {// Boucle infinie, on sort par break int c = entree.read (); // Lire un caractère if (c == -1) // Fin de l'entrée break; else // Cas normal System.out.print ((char)c); } entree.close(); } catch (IOException e) { // En cas de malaise System.err.print("Malaise : ") ; System.err.println(e.getMessage()) ; System.exit(-1) ; // Terminer le programme sur erreur } } }
Le programme utlisé comme « java Cat < fichier1 > fichier2 » permet de copier le contenu fichier1 dans fichier2.


Previous Up