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

Langage Java Discussion :

Manipulation d'un String bit par bit


Sujet :

Langage Java

  1. #1
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Points : 4 314
    Points
    4 314
    Par défaut Manipulation d'un String bit par bit
    Bonjour à tous! Voici un petit soucis que je rencontre actuellement...

    Contexte de mon problème:

    Je dois lire des fichiers indexés (ancêtres de la base de données), dont la structure est donnée dans un dictionnaire.
    Chaque ligne de mon fichier correspond à un enregistrement.
    Les différents champs de cet enregistrement me sont fournis par une autre source (clé codée sur les 3 premiers caractères, puis champ 'toto' sur les 5 caractères suivants...)
    Jusque là, aucun problème pour découper mon fichier en ses différents enregistrements et champs.

    Ca se complique...

    Là où ça se complique, c'est que certains champs sont de type "entier non signé", d'autres de type "entier signé". Hors dans le fichier, ces champs numériques sont encodés directement en binaire.
    Ce que j'ai pour l'instant pour l'instant, c'est un String (de taille variable en fonction de l'entier que l'on veut représenter).

    Maintenant, afin de retrouver l'entier qu'on a voulu encoder, j'ai besoin d'appliquer une méthode de conversion qui lise bit à bit sur cette chaîne de caractères (en particulier pour traiter le bit de parité en fonction du type de l'entier: signé ou non signé).

    La question

    Après une petite recherche, il me semble que le BitSet me permette de faire ma conversion. Par contre, je n'ai pas trouvé comment charger les valeurs de ce BitSet à partir de mon String. Si quelqu'un pouvait m'expliquer la marche à suivre, je suis preneur.

    Merci d'avance!
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

  2. #2
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Points : 4 314
    Points
    4 314
    Par défaut
    En l'absence de réponse, j'ai trouvé une piste (pas encore développée).

    Je fais un getBytes() sur mon String.
    Ensuite, je transforme ce tableau en entiers (Méthode Byte.intValue()).
    En suite, par des modulo 2^n jusdicieusement appliqués, j'en déduis les différents bit du Byte.
    Il ne me reste plus qu'à remplir mon BitSet à partir de ces valeurs, puis à effectuer mon calcul.

    Ca me paraît bien compliqué... mais si personne n'a d'idée pour une meilleure implémentation, je commencerai à développer ça avec la méthode ci-dessus.

    Je laisse ce sujet "non résolu" pour ceux qui voudraient poursuivre le débat sur ce problème
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

Discussions similaires

  1. [Débutant] XOR bit par bit en binaire.
    Par jboubou dans le forum MATLAB
    Réponses: 5
    Dernier message: 19/05/2012, 02h46
  2. Copie bit par bit avec dd
    Par adm_windoz dans le forum Debian
    Réponses: 8
    Dernier message: 07/06/2008, 09h52
  3. nombre de bits par pixel
    Par madjidri dans le forum C++Builder
    Réponses: 1
    Dernier message: 24/05/2007, 16h01
  4. Chercher par bits
    Par cadetill dans le forum Débuter
    Réponses: 17
    Dernier message: 03/07/2006, 12h57
  5. Lire bit par bit
    Par The_Undertaker dans le forum C++
    Réponses: 8
    Dernier message: 01/07/2005, 11h43

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