PrintStream méthode write
salut tout le monde,
soit le programme simple:
Code:
1 2 3 4 5 6 7 8 9
|
public static void main(String[] args) {
String s = "Hello";
byte[] b =s.getBytes();
for(int i = 0;i<b.length;i++)
System.out.write(b[i]);
} |
quand j'exécute ce programme rien n'est affiché sur la console !!!
par contre le programme suivant affiche le résultat Hello:
Code:
1 2 3 4 5 6 7 8
|
public static void main(String[] args) {
String s = "Hello";
byte[] b =s.getBytes();
System.out.write(b,0,b.length);
} |
- pour quoi le premier programe n'a rien affiché?? et le deuxième a affiché un résultat qui n'est pas attendu (j'attend l'affichage du code ASCII de Hello)
à ma connaissance write(int i) : écrite l'octet i sur le stream n'est ce pas?. donc le premier programme doit afficher le code ASCII de "Hello" ??
et pour quoi le deuxième programme a fait la conversion des octets vers des caractères (c'est la rôle de la méthode print) ??
merci