IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Collection et Stream Java Discussion :

Convertir un long et un float en tableau de byte


Sujet :

Collection et Stream Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2011
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 15
    Par défaut Convertir un long et un float en tableau de byte
    Bonjour,

    je souhaiterais convertir un double en byte[] ainsi qu'un float en byte[] également.

    J'ai cherché un peu sur le net et j'ai trouvé cette méthode (conversion long => byte)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    public static byte[] toByteArray(double d) {
         long l = Double.doubleToRawLongBits(d);
         return new byte[] { 
            (byte)((l >> 56) & 0xff),
             (byte)((l >> 48) & 0xff),
             (byte)((l >> 40) & 0xff),
             (byte)((l >> 32) & 0xff),
             (byte)((l >> 24) & 0xff),
             (byte)((l >> 16) & 0xff),
             (byte)((l >> 8) & 0xff),
             (byte)((l >> 0) & 0xff),
         };
     }
    mais l'appel de la méthode doubleToRawLongBits ne fait elle pas perdre en précision ?

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Citation Envoyé par Kiruaa Voir le message
    mais l'appel de la méthode doubleToRawLongBits ne fait elle pas perdre en précision ?
    Comme le dit la JavaDoc, non. Les 64 bits du long produit sont exactement les mêmes que les 64 bits de la représentation IEEE 754 du double lu.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2011
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 15
    Par défaut
    Merci pour ta réponse,

    aurait tu une idée pour la conversion de float vers byte [] ?

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Ben pareil, Float.floatToRawIntBits()

    Mais bon, de nos jours les bonnes raisons d'utiliser des floats sont rares.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juin 2011
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 15
    Par défaut
    Je ne m'en servirai pas vraiment j'ai juste besoin que la conversion existe pour mon programme, enfin bref.

    Merci pour ton aide :-)

  6. #6
    Invité de passage
    Femme Profil pro
    ingénieur développeur Java en alternance
    Inscrit en
    Février 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : ingénieur développeur Java en alternance
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2013
    Messages : 1
    Par défaut conversion en byte[]
    Bonjour,

    j'arrive sûrement trop tard, mais si ça peut servir à certains sachez qu'on peut preque tout convertir en byte[] avec Bytes.toBytes() de la librairie Hbase.
    Voici les liens sur cette merveilleurse classe :
    les explications :
    http://hbase.apache.org/apidocs/org/...til/Bytes.html
    le code :
    http://javasourcecode.org/html/open-...ytes.java.html

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment convertir un tableau de byte en un float ?
    Par alex140025 dans le forum Collection et Stream
    Réponses: 6
    Dernier message: 03/08/2011, 18h53
  2. convertir un long en byte[]
    Par le y@m's dans le forum Langage
    Réponses: 11
    Dernier message: 02/11/2005, 18h56
  3. [C#] Convertir un tableau de byte en Image
    Par goulhasch dans le forum ASP.NET
    Réponses: 4
    Dernier message: 24/01/2005, 10h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo