Bonsoir à tous,
Je suis sur l'écriture d'un programme permettant d'extraire le texte d'un fichier html et l'affiche sur la sortie standard. Ce fichier est lu depuis l'entrèe standard System.in.read (imposé par mon prof !) et je dois utiliser la classe StringTokenizer pour sa fonction de délimitation.
Le fichier html est du genre :
<html>
<head>
<title>mots à filtrer</title>
etc.
Voici ce que j'ai pu produire :
Ce cde ne me donne pas encore ce que je souhaite mais j'ai deux requêtes à vous soumettre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41 import java.io.*; import java.util.*; public class filtrage_texte { public static void main(String[] args) { int entier = 0; // parameter initialization StringBuffer sb = new StringBuffer(); // buffer creation System.out.println(" "); while (entier!=-1) // condition { try { entier=System.in.read(); // reading sb.append((char)entier); // characters chains adding } catch (IOException e) { System.out.println(e.toString()); // error message displaying in case of error } } StringTokenizer st = new StringTokenizer(sb.toString(),"<>"); String token = null; while (st.hasMoreTokens()) { token = st.nextToken(); if (!token.endsWith(">")) { System.out.print(token); } } System.out.println(" "); } }
- Pouvez-vous m'indiquer si je suis sur la bonne voie et me donner quelques indices ? je ne cherches pas de solution toute faite !
- La partie "lecture" fonctionne bien, mais j'ai systèmatiquement un caractère "?" qui vient se greffer au niveau du dernier caractère affiché, quelqu'un peut me dire pourquoi ?
ex :
...
/body
/html?
Merci d'avance et bonne soirée à tous.
Partager