Bonjour,
Je souhaiterais convertir tous les minuscules en majuscule dans un flot d'entrée.
D'après la documentation de java , je peux utiliser la classe filterInputStream qui me permettra d'effectuer la conversion en majuscule
Voici comment j'ai procédé:
Pourriez vous me dire ce qui ne vas pas dans ce codage.
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 public class UpperCaseInputStream extends FilterInputStream { public UpperCaseInputStream (InputStream in ){ super(in); // in represente le flux d'entrée à filtrer } public int read() throws IOException{ /** on récupere le premier caracter, si le premier est caractere est en majuscule ,on le laisse tel quel * sinon on effectue les passage de miniscule -> majuscule */ int c = super.read(); //lit le prochaine octet de données à partir du flux d'entrée. if(c == -1 ) { System.out.println("le fichier ne contient aucun octet"); return c ; }else{ System.out.println("le fichier contient un octet"); return Character.toUpperCase(c); //le caractere lu est converti en majuscule } }
Par ailleurs , je pourrais trouver une alternative a cela en utilisant la methode read(byte[] b, int off, int len); je ne vois pas tres bien comment je pourrais la coder.
Merci d'avance
Partager