PDA

View Full Version : تبدیل عکس به رشته



tatu3882
دوشنبه 02 اردیبهشت 1387, 17:47 عصر
با سلام خدمت تمامی دوستان
من می خوام یه عکس رو به رشته تبدیل کنم و رشته رو ارسال و جایی دیگه اون رو دریافت کنم و دوباره به حالت عکس دربیارم
کسی می دونه چجوری ؟
یکی بهم گفت به کمک base64 اما چه جوریش رو نمی دونم ؟

علیرضا مداح
دوشنبه 02 اردیبهشت 1387, 18:51 عصر
سلام دوست عزیز
شما باید ابتدا شی ء Image مورد نظر را به آرایه ای از Byte تبدیل و سپس این آرایه را به Base64String تبدیل نمایید و بالعکس.


public static Image FromBase64StringToImage(string base64String)
{
byte[] imageBytes = Convert.FromBase64String(base64String);
if (imageBytes == null) return null;
if (((byte[])imageBytes).Length <= 0) return null;
ImageConverter imageConverter = new ImageConverter();
return (Image)imageConverter.ConvertFrom(imageBytes);
}
public static string FromImageToBase64String(Image image)
{
if (image == null) return null;
ImageConverter lmageConverter = new ImageConverter();
byte[] bytes = (byte[])lmageConverter.ConvertTo(image, Type.GetType("System.Byte[]"));
return (Convert.ToBase64String(bytes));
}


مثال :



private void Form1_Load(object sender, EventArgs e)
{
Image image = Image.FromFile("C:\\a.gif");
string str = FromImageToBase64String(image);
this.BackgroundImage = FromBase64StringToImage(str);
}

tatu3882
دوشنبه 02 اردیبهشت 1387, 20:31 عصر
آقای مداح فقط می تونم بگم یه دنیا سپاسگزارم
نمی دونید وقتی اجرا شد چقدر خوشحال شدم
بازهم سپاسزازم

mdssoft
پنج شنبه 30 خرداد 1387, 20:34 عصر
اما من که میخوام یه base64 string رو به عکس تبدیل کنم این Exception رخ میده .


Invalid length for a Base-64 char arrayاین هم رشته base64 :


iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsSAAALEgHS3X78AAAABGdBTUEAALGOfPtR kwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAEJElEQVR42mL8//8/g56kvvbvf4wfrr+88JQBCDiNaoSY/v4M+sfMbgriSwp+eK3Lf/qDHO8n11u3mS8fOclQ9/XvlW8gOYAAYgERZSlGi1TUtaQc7NK0rn3nmxBsyBlnqybAcP2X LMN7bmmGV68/Mry6ycOwMHT/f34eZrclO7kiZXh0Y558ubwfIIAYQS44OqXgjYGloTDTi+0MjE ysDD9EgxhmHv7AwKFuwMAoLMHw5x8Dw9effxjET9YxpJpdZ/jLwMKw9yzzp+j6d/YAAQBBAL7/AiASNBEA+eoCBvXTAAAD/AD6AyYA/9+2APTNngDDu74A2Ov1AOPy+QDx+v4Azyx9AJDOOgADAPwARzb 6Di4hAmUCiDnOWas1zovf6fe3Fwx/Xj1m+PvuNcNfZlkGczV5hiWnXzKc59FieP7lD8PXX38ZfgKdcu qbHIMf2y4Gbk5gWP1nkgUIAEEAvv8EEQPzJf/u4QD9AQQA/fL1AAL8/gAOCOcAlM4CAMQWUgD87/gABQP6AOYFAQATCgUA9/X+AN/qAgAWE/8AQCwEFQIAQQC+/wTt9f0D/ezvAP4FAAD8+P8A6N72AH647gDHDDMA/SgQAAD8/AD7/gIA7/wBAPn7/QD829UA7CT9AAAsBACw0QYDAojp64MPwn9eAw349o3h21dmBmZ WFgZ93rcMHDx8DOuepzJU3ahk4L9+mOHvv78Mn7//ZuB9fY3BU+0/0P0cDNzifxkAAgBBAL7/AuDqBOLz4PMAAPLyAAwMBwARIxwAbDUFAMIhpgA7EekAcB3SAD LyzgAA/P0AAff1ACb/4AACIgwAAAsHAPXpAwACAEEAvv8C2fcBotTV/AD96/YABP7qAAz/7AAB/fcAuMz0AFu/LAAd1W0AwDBoAAL39QBIzpEAmEHnAAAZLQD++QAAjrPxswIAQQ C+/wP0/uzd7vgXbTz/8wkGEv0ABQ8NAAH25AAUEgwAwfETAO0EFAAV5M8Aae6oAJpK8A AVUC8AAO/9AIKH1QCzyPVVAgickLgFzPLrf1ye4K71g4HXQpBBUI4d6OT/DGxfuBn+/vrP8A8YkEzsTAzMOn8Z2OUUGM5u/MjgsoTryJe3Jx0BAghsACMjI7egkMXe4o+XzF15vjFwqjAx8Kh yM/CKczMwsjEA0x0bAyPrfwYOuX8Mu85wMyRt4X/4+sVpc6DelwABBDOAEZglRNjEHWcbfH3mH/btIYPmvx8MQEsZ2MUYGdhVWBhesPMyzH8qwrD9g8TFHy8OhQLV PwDq/Q0QQGADQABoBlA5gyATl5QpC596LdAT+lz//nIzMvxn+MbE+usHI8vTf38/zvrz6uQyoLoXQH2/QPoAAghuAAwADeIAuQaIRYGYl4lLgu/ftxevgew3QPwKiL8C9fyDqQcIMACDoJbT47bbfAAAAABJRU5Er kJggg

باید چی کار کنم ؟