Partage
  • Partager sur Facebook
  • Partager sur Twitter

Convertir du texte binaire en image

xml windows contact

Sujet résolu
    20 juin 2011 à 10:58:24

    Hello,

    Je suis en train de travailler sur une librairie permettant d'utiliser les contact windows dans une application. J'ai vu que parfois les images sont stockées en texte binaires. ex:

    <c:Value c:Version="2" c:ModificationDate="2011-02-19T14:38:03Z" c:ContentType="binary">
    /9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAICAgICAQICAgICAgIDAwYEAwMDAwcFBQQGCAcICAgH
    CAgJCg0LCQkMCggICw8LDA0ODg4OCQsQEQ8OEQ0ODg7/2wBDAQICAgMDAwYEBAYOCQgJDg4ODg4O 
    Dg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg7/wAARCAEGAQYDASIA AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
    ................................ca continue comme ça longtemps 
         </c:Value>
    <c:LabelCollection>
    


    Je voudrais savoir comment convertir ce texte en image. (wpf)

    J'aimerais aussi savoir si il existe une doc sur le xml des contacts parce que je ne parviens pas à la trouver.

    Merci d'avance :)
    • Partager sur Facebook
    • Partager sur Twitter
      20 juin 2011 à 11:13:30

      D'après mes souvenirs, il me semble que tu dois passer par un FileStream, mais j'en suis plus du tout sûr.

      J'avais vu un tuto sur le net pour ça...

      http://www.digitalcoding.com/Code-Snip [...] l-server.html

      Essaie de regarder ça, vu que sur SQL Server c'est stocké en binaire ça sera le même principe pour toi je pense...
      • Partager sur Facebook
      • Partager sur Twitter
        20 juin 2011 à 14:50:06

        je vais tester ça merci ;)


        Edit: Bon ça ne marche pas, je pense que le problème viens du format

        <c:Value c:Version="2" c:ModificationDate="2011-02-19T14:38:03Z" c:ContentType="binary">
        /9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAICAgICAQICAgICAgIDAwYEAwMDAwcFBQQGCAcICAgH
        CAgJCg0LCQkMCggICw8LDA0ODg4OCQsQEQ8OEQ0ODg7/2wBDAQICAgMDAwYEBAYOCQgJDg4ODg4O 
        Dg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg7/wAARCAEGAQYDASIA AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
        ................................ca continue comme ça longtemps 
             </c:Value>
        <c:LabelCollection>
        


        C'est censé être du binaire, mais c'est une chaîne de caractère. Je ne vois pas comment transformer ça en vrai binaire :(
        • Partager sur Facebook
        • Partager sur Twitter
          20 juin 2011 à 16:23:37

          Coucou!

          Citation

          Je voudrais savoir comment convertir ce texte en image. (wpf)



          Regarde du côté de la classe BitmapImage !
          Tu peux initialiser ton image via un stream (prenant en paramètre ton tableau de bytes) avec la propriété StreamSource (Y'a même un exemple à la fin de fournis ! :) )
          • Partager sur Facebook
          • Partager sur Twitter
            20 juin 2011 à 16:27:00

            Citation : Elbakin

            Coucou!

            Citation

            Je voudrais savoir comment convertir ce texte en image. (wpf)



            Regarde du côté de la classe BitmapImage !
            Tu peux initialiser ton image via un stream (prenant en paramètre ton tableau de bytes) avec la propriété StreamSource (Y'a même un exemple à la fin de fournis ! :) )



            Ça j'ai déjà trouvé comment faire, l'ennui, c'est que dans le xml c'est du texte et je ne sais pas comment l'extraire directement en binaire :(
            • Partager sur Facebook
            • Partager sur Twitter
              20 juin 2011 à 17:25:15

              Salut, vu ce que tu as écris comme "binaire" je dirais plutot que c'est du base64, c'est très souvent utilisé pour transformer les caractères bizarres du binaires en caractères alphanumérique plus simple, question de stockage je suppose, mais je suis pas un expert.

              Donc voila, à mon avis, avant d'essayer de créer ton Image en lui passant un Stream de binaire, tente de décoder la chaine en base64.

              En gros tu devrais avoir quelque chose comme ceci :
              byte[] imageArr ;
              
              //set your imageArr here---
              
              BitmapImage bi = new BitmapImage();
              bi.BeginInit();
              bi.CreateOptions = BitmapCreateOptions.None;
              bi.CacheOption = BitmapCacheOption.Default;
              bi.StreamSource = new MemoryStream(imageArr); // ici il faudrait décoder en base64
              bi.EndInit();
              
              Image img = new Image();  //Image control of wpf
              
              img.Source = bi;
              
              • Partager sur Facebook
              • Partager sur Twitter
                20 juin 2011 à 19:49:04

                c'était bien du base64, merci beaucoup ;)
                • Partager sur Facebook
                • Partager sur Twitter

                Convertir du texte binaire en image

                × 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