Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Wie mache ich aus binaryString ein Imageobject?
zhonja
myCSharp.de - Member



Dabei seit:
Beiträge: 12

Themenstarter:

Wie mache ich aus binaryString ein Imageobject?

beantworten | zitieren | melden

Hallo zusammen....

ich glaube mein Titel sagt schon alles aus :)

Also ich habe auf der Clientseite einen <input type="file"....> bla bla bla

Sobald der Benutzer ein Bild ausgewählt hat, wird das Bild als Binärer-String zum Server geschickt...

Wie erstelle ich jetzt aus diesen String eine Bitmap als JPG z.B....
private Nachricht | Beiträge des Benutzers
herbivore
myCSharp.de - Experte

Avatar #avatar-2627.gif


Dabei seit:
Beiträge: 52329
Herkunft: Berlin

beantworten | zitieren | melden

Hallo zhonja,

pack die Bytefolge in einen MemoryStream und wende darauf Image.FromStream an.

herbivore
private Nachricht | Beiträge des Benutzers
zhonja
myCSharp.de - Member



Dabei seit:
Beiträge: 12

Themenstarter:

beantworten | zitieren | melden

Hi...


wie soll ich den aus meinem Binären-String ein MemoryStream machen???

Ich habe ein String der den Inhalt einer Image beinhaltet... Ich glaube du verwächselt die Bytes mit Inhalt.... Mein Inhalt ist ein String...

Wenn du ein Image mit Editor öffnest, dann siehst du was da alles drine steht und genau die Daten habe ich als ein String also...


MemoryStream mms = new MemoryStream();

weiter???

So bekomme ich mein Image:
readAsBinaryString()

Da steht also so ein Mist drine:
ÿØÿà JFIF  H H  ÿáùExif  MM *                  b       j(       1       r2       ‡i       ¤   Ð   H      H   Adobe Photoshop CS Windows 2007:01:19 19:34:45          ÿÿ                
                          &(             .      Ã       H      H   ÿØÿà JFIF  H H  ÿí Adobe_CM ÿî Adobe d€   ÿÛ „ 			



ÿÀ  j  " ÿÝ  
ÿÄ?          	
         	
 3 !1AQa"q2‘¡±B#$RÁb34r‚ÑC%’S áñcs5¢²ƒ&D“TdE£t6ÒUâeò³„ÃÓuãóF'”¤…´•ÄÔäô¥µÅÕåõVfv†–¦¶ÆÖæö7GWgw‡—§·Ç
Dieser Beitrag wurde 3 mal editiert, zum letzten Mal von zhonja am .
private Nachricht | Beiträge des Benutzers
MartinH
myCSharp.de - Member

Avatar #avatar-1761.gif


Dabei seit:
Beiträge: 183
Herkunft: Asperg

beantworten | zitieren | melden

...und wo ist der Unterschied zwischen einem String der nur lesbare Zeichen und einem String der Binärdaten (so wie deiner) enthält?
private Nachricht | Beiträge des Benutzers
MrSparkle
myCSharp.de - Team

Avatar #avatar-2159.gif


Dabei seit:
Beiträge: 5987
Herkunft: Leipzig

beantworten | zitieren | melden

Hi zhonja,

so wie es aussieht, handelt es sich um eine Photoshop-Datei. Solche Formate werden vom Framework nicht unterstützt. Ansonsten gibt es genügend Beispiele in der Doku, wie man Bytefolgen in Streams bzw. Image-Objekte umwandeln kann. Deshalb möchte ich dich bitten, in Zukunft bitte [Hinweis] Wie poste ich richtig? (Punkt 1) zu beachten!

Christian
Weeks of programming can save you hours of planning
private Nachricht | Beiträge des Benutzers

Moderationshinweis von herbivore (03.05.2012 - 18:29:08):

Es ist wohl schon eine JPEG-Datei (zu erkennen am JFIF), aber richtig ist, dass das Umwandeln unter Punkt 1 fällt. Vermutlich wird ein Binärstring ein String sein, in dem die einzelnen Zeichen einen Code zwischen 0 und 255 entsprechend des zugehörigen Byte-Werts haben. Es sollte also reichen, (in einer Schleife) jedes Zeichen in ein byte zu casten. Möglicherweise tut es auch Encoding.Unicode.GetBytes.