[java] conversion byte[] en char[]

Résolu
karine -  
jebok Messages postés 371 Date d'inscription   Statut Membre -
Bonjour à tous !

Je vous mets mon erreur :


Sources/Clients.java:283: cannot find symbol
symbol : method write(byte[],int,int)
location: class java.io.FileWriter
fluxFinal.write(buf, 1, n-1);
^



Le problème est qu'un type FileWriter admet bien une méthode write(char[] cbuf, int off, int len)

Mais mon buf est un byte[]

Est-ce qu'il y a moyen de faire une conversion ?

Merci!!

5 réponses

  1. tony
     
    bonjour,

    solution plus simple:

    avec un filewriter on peut faire du write(String str,int off,int len) et donc pour convertir ton buf en string tu fais tt simplement:
    buf.toString()

    ;)
    2
  2. Nashouille
     
    http://forum.java.sun.com/thread.jspa?threadID=627625&messageID=3592648

    char c = (char) (x & 0xff);

    Exemple:
    byte x = (byte) 255;
    char c = (char) x; // note: (char) cast is unnecessary here
    System.out.println("c without bit-fiddling magic=" + (int) c); // prints 65535
    c = (char) (x & 0xff);
    System.out.println("c with bit-fiddling magic=" + (int) c); // prints 255

    Il semblerait que ce soit quelque chose comme ça
    0
  3. karine
     
    Merci tony !

    ca marche très bien !!
    Et merci à Nashouille aussi !
    0
  4. tony
     
    merci de rien

    nb: affiche le sujet de discussion kom resolu ;)
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. karine
     
    Je veux bien, mais j'arrive pas à trouver comment faire ça.

    Y a un bouton en haut à droite parait-il ?
    Moi j'ai rien.
    Peut-etre parce que je suis sous linux ou parce que je ne suis pas membre.
    0
    1. jebok Messages postés 371 Date d'inscription   Statut Membre 51
       
      Lorsque tu recois les mails provenant de ton sujet de discussion, il y a une ligne disant :
      "Si votre problème est résolu, cliquez ici : ..."

      Si tu as décidé de ne pas recevoir les mails, alors je crois qu'il faut être membre...

      Au passage, ca prend 2 min pour s'inscrire en tant que membre, c gratuit et ca facilite le post. :-)
      0