Partage
  • Partager sur Facebook
  • Partager sur Twitter

Écrire un fichier en binaire

Sujet résolu
    21 mai 2011 à 4:21:16

    Salut tout le monde.

    Voilà je cherche depuis un certain temps une façon d'écrire un fichier en binaire. Je suis allé voir la bibliothèque java.io.File. Mais lorsque je cherche dans la documentation je trouve aucune information à propos de créer un fichier binaire.

    Pourquoi pas un fichier texte ..? Car je veux encodé mes fichier pour que personne ne peut y avoir accès, j'aimerais pouvoir écrire sur des chaînes de 4bi.

    exemple: 0100 0110 etc...

    Merci d'avance
    Mathieu :)
    • Partager sur Facebook
    • Partager sur Twitter
      21 mai 2011 à 7:40:26

      Plop,

      Tu peux transformer ton/tes String en byte[] et les écrire sur ton fichier et vice versa. La méthode getBytes() de String te renvoie ton String en byte[] et tu peux créer un string en lui passant un byte[].

      Sinon regarde du côté de la sérialisation s'il s'agit simplement de masquer des informations.
      • Partager sur Facebook
      • Partager sur Twitter
        21 mai 2011 à 20:15:39

        Yop,

        Tu peux aussi regarder la classe ObjectOuputStream, il me semble que c'est pour de la serialization d'objets en binaire. Enfin... à vérifier.
        • Partager sur Facebook
        • Partager sur Twitter
          21 mai 2011 à 20:42:14

          Merci beaucoup à vous deux kiko0 et Hadriel. Je vais faire quelque test pour pouvoir confirmer avec vous.
          • Partager sur Facebook
          • Partager sur Twitter
            24 mai 2011 à 5:36:10

            Hmm petit problème la fonction getBytes() de la classe String me renvoie des bytes et non des chiffres binaires.

            Byte étant une variable 2^8 = 256
            Alors que ce que je tente de faire c'est créer un dossier en 0 et 1.

            Je vais continué mes recherche dans la Bibliothèque de java. Si vous avez une réponse ne vous gênez pas :) .

            Mathieu
            • Partager sur Facebook
            • Partager sur Twitter
              24 mai 2011 à 9:14:24

              getBytes te renvoie le tableau d'octets qui correspond au contenu de ta chaine. C'est directement ce que tu cherches à faire sauf qu'il te retourne des octets au lieu de te retourner des bits.
              De toute façon, les méthodes de sérialization te demande des tableau d'octets et pas des tableau de bit (je ne crois pas que le type bit existe de toute façon). Donc tu peux directement travailler avec ce que te retourne getBytes, ca marche très bien.
              • Partager sur Facebook
              • Partager sur Twitter
                24 mai 2011 à 22:08:22

                Le type bit existe bien et bien et il y a aussi le type assembleur (code machine).

                Un octel équivaux a 8 bits.
                Une lettre est formé de 8 bits...
                ce qui donne 2^8 de possibilité de lettres...
                ce qui donne 256 charactère différent (ASCII)
                Mais je crois que la sérialization est surement l'une des meilleurs façons d'encrypter ma classe dans un fichier.

                Merci de vos réponses!



                • Partager sur Facebook
                • Partager sur Twitter

                Écrire un fichier en binaire

                × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                • Editeur
                • Markdown