elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Guardar imagen en binario en un archivo (C#)
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Guardar imagen en binario en un archivo (C#)  (Leído 15,868 veces)
Hartigan


Desconectado Desconectado

Mensajes: 310


Ver Perfil
Guardar imagen en binario en un archivo (C#)
« en: 4 Agosto 2010, 12:58 pm »

Hola, tengo un nuevo problema, tengo una imagen la cual obtengo directamente de la base de datos... Una vez obtenida quiero almcenar su valor binario en un archivo (para lo del vcard), como puedo hacerlo???

gracias de antemano.


En línea

[D4N93R]
Wiki

Desconectado Desconectado

Mensajes: 1.646


My software never has bugs. Its just features!


Ver Perfil WWW
Re: Guardar imagen en binario en un archivo (C#)
« Respuesta #1 en: 4 Agosto 2010, 15:38 pm »

Mira este post, no es viejo, y se aclaran muchas dudas:
http://foro.elhacker.net/net/guardar_imagen_en_base_de_datos_c-t296587.0.html


En línea

Hartigan


Desconectado Desconectado

Mensajes: 310


Ver Perfil
Re: Guardar imagen en binario en un archivo (C#)
« Respuesta #2 en: 4 Agosto 2010, 16:00 pm »

jaja, sí, lo estuve mirando, pero a ver, yo cuando recogo la imagen en la base de datos se supone que ya está en binario. pero luego al añadirlo al archivo como lo hago?? yo hago lo siguiente: (para crear un vcard file)

sw.WriteLine("PHOTO;ENCODING=b;TYPE=JPEG:" + photo);

y claro una vez que tngo el archivo .vcf, no funciona. El contenido del archivo al abrirlo con el bloc de notas es este:

Código:
....
....
PHOTO;ENCODING=b;TYPE=JPEG:System.Byte[]
TEL;WORK;VOICE:123456789
TEL;HOME;VOICE:980512833
TEL;CELL;VOICE:660778300
TEL;WORK;FAX:
.....
...

Es decir no me está representando los bits...

A ver si me podeis ayudar..

gracias. 

En línea

raul338


Desconectado Desconectado

Mensajes: 2.633


La sonrisa es la mejor forma de afrontar las cosas


Ver Perfil WWW
Re: Guardar imagen en binario en un archivo (C#)
« Respuesta #3 en: 5 Agosto 2010, 00:21 am »

intenta usar sw.Write(photo, 0, photo.length);

Dudo que funcione :xD, en todo caso, escribe byte x byte directamente :D
En línea

[D4N93R]
Wiki

Desconectado Desconectado

Mensajes: 1.646


My software never has bugs. Its just features!


Ver Perfil WWW
Re: Guardar imagen en binario en un archivo (C#)
« Respuesta #4 en: 5 Agosto 2010, 01:17 am »

Qué tipo es esa variable "photo"?
En línea

Hartigan


Desconectado Desconectado

Mensajes: 310


Ver Perfil
Re: Guardar imagen en binario en un archivo (C#)
« Respuesta #5 en: 5 Agosto 2010, 02:18 am »

Qué tipo es esa variable "photo"?

Es una variable de tipo byte, normal para leer la imagen de la base de datos como haciamos en el otro enlace que me has pasado. xDD
En línea

[D4N93R]
Wiki

Desconectado Desconectado

Mensajes: 1.646


My software never has bugs. Its just features!


Ver Perfil WWW
Re: Guardar imagen en binario en un archivo (C#)
« Respuesta #6 en: 5 Agosto 2010, 02:46 am »

Ah, claro ya lo veo, es que no lo vas a poder hacer así xD Tienes que convertir el byte[] en string..

Código
  1. sw.WriteLine("PHOTO;ENCODING=b;TYPE=JPEG:" + System.Text.ASCIIEncoding.ASCII.GetString(photo));

Porque al meterlo ahí, y concatenarlo, automáticamente se le hace .ToString, y ese ToString es de object, por lo que te sale es el nombre de la clase.

Saludos!
En línea

Hartigan


Desconectado Desconectado

Mensajes: 310


Ver Perfil
Re: Guardar imagen en binario en un archivo (C#)
« Respuesta #7 en: 5 Agosto 2010, 14:09 pm »

mmm, no me funciona, en el txt veo que genera muchas interrogaciones en lugar de caracteres y me sigue sin cargar la imágen....

Código:

...
PHOTO;ENCODING=b;TYPE=JPEG:???? JFIF  ` `  ?? ?Exif  MM *           J       R(       1       Z?i       j       `      `   Paint.NET v3.36  ??    t   |    C R E A T O R :   g d - j p e g   v 1 . 0   ( u s i n g   I J G   J P E G   v 6 2 ) ,   q u a l i t y   =   9 0
     ?? C 
  
 



?? C  
??  Z Z" ??           
?? ?   } !1AQa"q2???#B??R??$3br?
%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz???????????????????????????????????????????????????????????????????????????        
?? ?  w !1AQaq"2?B???? #3R?br?
$4?%?&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz??????????????????????????????????????????????????????????????????????????   ? ?w??
???Q[[<?8TA?k??G?|w?K???ea?2Ha? ????|G(?1?7^?R?ap?w$`W??O????.?r?I?<?9??F1?d?U????Kuu=?[?????88????[l?;)+D?s?????wL?xQ????????mi,,x??^i??U???????+@?C???z? ?????<7?}?G?[g?8?52??kS??&??7L????c??e??? ?K???dc??$??H???t????K??c?K2(c?_8?i?????N????&?gyP>^8?9? 85????z??;?e?-?/?}??? ??5?C?3_O~?????m?\?)???????rG?=??>j???}????u??_???????????F????G?k?*??>? ?u? c? ?????r2)?? ?H??73?p??????&?4?d??????>??????Z???????????mI?C??\? ???_?7?+??_%6??0???0??.+c?|S|????????????O?3????)?????????Dq-?c?c??????u???R?eo???I I!lyj????(???z?5ss%??O??
?????_?EY[#???@??A??:??{??@yO??2"??~??g?A ??|w?gw??]>????4????y?z??<??? ??????5???zg????M???f?|3??X??x???!u?<1R;H'+?s?g???uv??j*V??g???~x)f????[k5??`>?A??n????WR????r??V???!t?[t ??q??\???bj7&???i?MZ??fE ??
/ j8U?W9??}????8?NU??dG??W3G?%???t??"r?<??x'??WI???W???4???sdJ?<S??,>????wrF??d??h??!????}kgP???E?jF@???O? ?J??+?V??~????-KN?K`y?g?????tBC??????]?|???? e???+??c??m"??G? ?L???m?7x.[8????w@??T??????9g??%?k1???=?}x????mB??z???[w_"?s l?2????y=??RC?[=[??Q??nc??V?5y?P={Q?????'?????@.'M????(???#?q????J??6i-?0????-??n???H???k?????UH??>g_???_3?U??B? W???d?3??4 1??&?Ms3???w?A?9?t????J???7??GE??Xm?8????j3?5??O?T???&????X??s??????:?? ?oP
t???x<G)??4_tn??????=??:W??5??????N"K??1?j?'@?E?N??K??CU?? 4???Q???p[???=j5????
??? ?G?{;?m?$?]??9??p???RI$?*? ???_???$?'???~????r???5??,
?x?@'yf?I???=?91N?EY?^h?+[YN?'x ?b?????o?W?y???h????????????T??w#?Mq???V?H&)?????}??H?Gr?;???A????K??
sJ???j??????#??:b?`r7??????i???l4??9oc?3?+?KbbR??(?P??J?=r?P???????{k??)? ??7?????[??=?N???V???? ?I]?u??)???????p???}w??.?oy???Xgu??X!F?"?6'??O??x??k??2?%???H??? ?#????'???????~?^2?E`'? ???????D{?\U&??F?RuK_???????????yt;?;3??n8<?_RXw???:4Z???o?$0??L1?J???9???!?\&?? f?t?????A4G?RX?0a? ?}k?????>,?.?P?u!?(uK???a?0?????>h?????OS?????K?N???(?7?D?? v??b?o?e????=?Vql????????~"???? -???#???
? ?????? )N ?E:???Y??Ox????[?e?|? ?
?O?????Mp".-?????H?b3?????|4??r?[?1???:??q??UE%?.NR?>??@???Gyv _2x????S???)u/????u???+=.?3???<???Vc??==?cY??9?????????y?m?`gc? 7????????W??l??^??::?i?????3 H,????N???1???Q?_x?k???yl???jg 0#??W?<q?;??,?1?K??%?iqj??C6?<?#?l{???h??(???1???I?7??RE?GV???y???EO0X? ?Q????f{????<G?6?B????? ??y'?x?H?K????PGi??WV??|.-??7~??P`????/??3??~$?????f?._Obp??R???{??w???????l???g??????+?r?Q????=9ROPMq??*;(8?K?0x?????Il???+e ??Wv?|?8 ?%?rI?,?}??g???koi???????n!'?C?rb???g?j?,?d?$???_A???k/??rz?????|???/???P,{?w?$c????hJ??VeN3J?Y???+- ?w??>??????.-?????? G ?????C_?x?x?R???) ??????W?W?Im???"=KN/??zy??????????zv???|S????$_?6????YH?A9???c]rwW<N??f?D?e?1????O0i?? ??J??????s_p????? d}
.|x?[??5??
????? _?@=?=?!?????~6???'???r??z?*?
??S??6{?^}??8t;?2<y1???? ?(????b?=???=o??X???rX???%?rz?
LIm!??????_?Y}???!???'?rb%t?r???[??[?? ??O??j??r??"? ?? u?????5???4K? -Qm??M????????:?? =???|Ssksk{5??2??l=85?sG???P??v}?:??w?H?f?v?????????_?]??????? X}??"]c@W "?6?u??P{09? ?|?Dv????????N??.+?-_G?`u
?=???e~B?8? d??L Sn?u'??7?(?????n??J?i???J?6<?+4x?9? ?@5????[?!???]??u`f? ??9???^y??????v??;???Ny.S#=?^???Ti?B?????HX?$?}I5?H?5(?R?????M????p???/ _I???F??????T?`????????????b~?r3??????GR=??XX???p????W?~??"mc??:Do??D??N?F0]???X??\?W????(a????i?=??7k??l???????Ga???Z???&?m-"?e.???$?lg ????O????ew[???Y?(9???y?8??y??&?? R ???<????=E???:??n???????N???d1??? ?6??Jn?TQo?_??&i???bI.?;x#Rr6??^?'?x???????y?V??Fy?6?P?N[i???q^k?/Y?$???????<?????f?????9-+3I$?{?e8?lpT??????
TEL;WORK;VOICE:123456789
TEL;HOME;VOICE:980512833
TEL;CELL;VOICE:660778300

....

En línea

raul338


Desconectado Desconectado

Mensajes: 2.633


La sonrisa es la mejor forma de afrontar las cosas


Ver Perfil WWW
Re: Guardar imagen en binario en un archivo (C#)
« Respuesta #8 en: 5 Agosto 2010, 15:38 pm »

Ah, claro ya lo veo, es que no lo vas a poder hacer así xD Tienes que convertir el byte[] en string..

Código
  1. sw.WriteLine("PHOTO;ENCODING=b;TYPE=JPEG:" + System.Text.ASCIIEncoding.ASCII.GetString(photo));

Porque al meterlo ahí, y concatenarlo, automáticamente se le hace .ToString, y ese ToString es de object, por lo que te sale es el nombre de la clase.

Saludos!

MMm... que codificacion estas grabando el archivo? Yo intentaria con ANSI o UTF-8

Código
  1. sw.WriteLine("PHOTO;ENCODING=b;TYPE=JPEG:" + System.Text.Encoding.UTF-8.GetString(photo, 0, photo.Length));
(PD: Nunca me funciono el GetString por si solo :¬¬ siempre tuve que poner inicio y final :P)
En línea

[D4N93R]
Wiki

Desconectado Desconectado

Mensajes: 1.646


My software never has bugs. Its just features!


Ver Perfil WWW
Re: Guardar imagen en binario en un archivo (C#)
« Respuesta #9 en: 5 Agosto 2010, 16:11 pm »

Si exacto, eso era solo un ejemplo, prueba con otras codificaciones..

Saludos!
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda con archivo binario, por favor. « 1 2 »
Programación C/C++
carlosguay 12 7,341 Último mensaje 25 Abril 2011, 13:53 pm
por Arkangel_0x7C5
[?] leer binario y guardar en struct dato AYUDA « 1 2 »
Programación C/C++
nolosabe 17 9,174 Último mensaje 29 Octubre 2011, 15:44 pm
por nolosabe
Guardar imagen sin tener ruta de archivo en una base datos.
.NET (C#, VB.NET, ASP)
enterariel 2 3,607 Último mensaje 10 Agosto 2012, 22:04 pm
por enterariel
Guardar Lista Enlazada en Archivo Binario
Programación C/C++
mari2diaz 2 4,252 Último mensaje 4 Abril 2018, 05:42 am
por mari2diaz
Como validar un email para guardar en un archivo binario
Programación C/C++
arturo2507 1 1,633 Último mensaje 29 Noviembre 2018, 09:40 am
por K-YreX
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines