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

Composants graphiques Android Discussion :

Inputstream et byte[] dans Text view


Sujet :

Composants graphiques Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Octobre 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Octobre 2012
    Messages : 2
    Par défaut Inputstream et byte[] dans Text view
    Bonjour,

    Je fais une appli bluetooth à partir de source que j'ai récupéré.
    Je teste sur mon HTC car je ne sais pas comment utiliser le bluetooth sur l'émulateur.
    Le but est de récupérer des données hexadécimal envoyer par une interface.
    J'ai 2 questions:
    Comment tester que j'ai bien ce que je veux dans mon inputstream?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
       byte[] buffer = new byte[64]; // Buffer temporaire
       int nbBytes;
    -----
     nbBytes = mmInStream.read(buffer);
    Je transfére mon inpustream dnas un byte[] et je veux afficher ça dans un TextView et ça m'afficher des caractéres bizarres.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
        case MESSAGE_READ: // Des octets ont été reçus du périphérique Bluetooth
             byte[] readBuf = (byte[]) msg.obj; //Tableau contenant les octets reçus
            longueur=readBuf.length;
     
             String readMessage = new String(readBuf, 0, msg.arg1);
     
             TextView mText = (TextView) findViewById(R.id.textView1);
             mText.setText(readMessage);
             break;
    Merci de votre aide.
    Slts

  2. #2
    Expert confirmé

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Billets dans le blog
    3
    Par défaut
    Le tableau de byte[] correspond bien à une chaine de caractères ?
    Si oui comment est elle encodée coté "serveur" ?
    Si non, ben ça sert à rien de vouloir la transformer en String, autant afficher les valeurs hexadécimales...

    String readMessage = new String(readBuf, 0, msg.arg1);

    Transforme les msg.arg1 premiers octets du tableau readBuf en chaine de caractère, partant du principe que c'est de l'UTF-16 (encodage par défaut de java)

  3. #3
    Candidat au Club
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Octobre 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Octobre 2012
    Messages : 2
    Par défaut Utf 8
    J'ai demandé a au fournisseur de mon interface pour le codage et je n'ai aps eu de réponse.
    Comment faire pour convertir mon byte[] en UTF8 ( je pense que c'est du Utf8).

    Pouvez vous me dire comment faire pour convertir un tableau de byte en string uft8?

    Merci
    Slts

  4. #4
    Expert confirmé

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Billets dans le blog
    3
    Par défaut
    byte[] c'est un tableau de byte, pas de conversion possible...

    Par contre, le constructeur de String (à partir de byte) peut recevoir le charset utilisé pour ces bytes justement...

Discussions similaires

  1. Ajouter une zone texte dans une View Eclipse
    Par bulldo dans le forum SWT/JFace
    Réponses: 15
    Dernier message: 18/08/2010, 18h05
  2. récupérer le text saisie dans GText.view (lablgtk2)
    Par amiroushka dans le forum Caml
    Réponses: 2
    Dernier message: 02/11/2009, 15h00
  3. Comment avoir un fichier texte dans une view?
    Par stibbons dans le forum Eclipse
    Réponses: 0
    Dernier message: 10/09/2009, 16h18
  4. [VB6]ecrire une chaine de byte dans la base de registre
    Par tomnie dans le forum VB 6 et antérieur
    Réponses: 12
    Dernier message: 17/12/2008, 10h50
  5. Réponses: 2
    Dernier message: 10/06/2002, 11h03

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