Hello,
Je cherche à lire un InputStream et créer une chaine de charactère qui contiendra le contenu de ce stream
Comment dois je procédé je ne trouve pas d exemple sur google
D avance merci
Hello,
Je cherche à lire un InputStream et créer une chaine de charactère qui contiendra le contenu de ce stream
Comment dois je procédé je ne trouve pas d exemple sur google
D avance merci
Un InputStream est une suite d'octets. Une chaîne est une suite de caractères. Comment veux-tu que ces octets soient interprétés dans ta chaîne ? Comme "0 1 2 3 -128 127 59 84 -36", ou comme "\u0000\u0001\u0002..." ?
on peut passer d'octets (inputstream) en chaine (string) et inversement, c'est ce que l'on appelle respectivement decodage/encodage. Pour faire cela, on a besoin de "table de correspondance" : le jeu de caractères. Par défaut java utilise l'UTF16.
finalement j ai opté pour cette solution :
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 private String loadPageSizeText() { BufferedReader stream = null; try { StringBuffer condition = new StringBuffer(); IPath path = new Path(FOOTER_FILE); stream = new BufferedReader(new InputStreamReader(FileLocator.openStream(Activator.getDefault().getBundle(), path, false))); String s; while ((s = stream.readLine()) != null) { condition.append(s); condition.append("\n"); } return condition.toString(); }catch (Exception ex) { Logger.error("Exception while reading the page footer file ", ex); return ""; } finally { try { stream.close(); } catch(IOException e) { // ignored } } }
Partager