C# - Base64 ile Görseli String e Çevirmek


10.07.2020 / Serdar Kardan


C# - Base64 ile Görseli String e Çevirmek

Base64 Encoding, binary verileri metne dönüştürerek saklamaya yarayan bir tekniktir. Buna en güzel örnek bir fotoğrafın encode edilerek veritabanı içinde saklanması gösterilebilir.

Bu makalede aslında 2 farklı işlem gerçekleştireceğiz. İlk adımda bir görseli Base64 Encoding ile string’ e çevirip, ikinci adımda ise elimizdeki Base64 string’ i tekrar görsel dosyası haline getirerek görüntüleyeceğiz. 

Ekte proje dosyalarını da bulabileceğiniz bu çalışmada, önce OpenFileDialog ile bir görsel seçiyoruz.
 

Base64 Decode - OpenFileDialog

Bu görseli ilk PictureBox’ a yüklüyoruz, Base64 çevrimini yapıyoruz ve üretilen stringi TextBox’ a yazıyoruz. Daha sonra da elimizde Base64 string’ i tekrar decode ederek görsel dosyasına çeviriyoruz.

Kaynak kodları aşağıda bulabilirsiniz;

using System;
using System.Drawing;
using System.IO;
using System.Windows.Forms;

namespace ImageToBase64
{
	public partial class frmMain : Form
	{
		public frmMain()
		{
			InitializeComponent();
		}

		private void btnSelectFile_Click(object sender, EventArgs e)
		{
			// OpenFileDialog için seçenekler belirleniyor.
			// Parameter Settings for File Dialog
			ofdSelectImage.Filter = "Tüm Dosyalar |*.*| Jpeg Görseller|*.JPEG,*.JPG,*.jpg,*.jpeg| PNG Görseller|*.png";
			ofdSelectImage.FilterIndex = 1;
			ofdSelectImage.SupportMultiDottedExtensions = true;
			ofdSelectImage.Multiselect = false;

			if (ofdSelectImage.ShowDialog() == DialogResult.OK)
			{
				string secilenDosya = ofdSelectImage.FileName;

				// PictureBox' ta görsel yükleniyor.
				// ımage loading to Picturebox
				pbxLoadedımage.Image = Image.FromFile(secilenDosya);
				pbxLoadedımage.SizeMode = PictureBoxSizeMode.Zoom;

				// Görsel' in Base64 çevrimi yapılıyor.
				// Image converting to base64

				byte[] imageBytes = System.IO.File.ReadAllBytes(secilenDosya);
				string base64Formatted = Convert.ToBase64String(imageBytes);
				txbBase64Code.Text = base64Formatted;

				// Base64 kod' dan görsele dönüştürme yapılıyor
				// Base64 code is converting to image

				byte[] base64Bytes = Convert.FromBase64String(base64Formatted);
				MemoryStream memoryStream = new MemoryStream(base64Bytes);
				pbxConvertedImage.Image = Image.FromStream(memoryStream);
				pbxConvertedImage.SizeMode = PictureBoxSizeMode.Zoom;
			}
		}
	}
}

Proje dosyalarını ise aşağıdaki linkten indirebilirsiniz.

Proje Dosyaları




10.07.2020 - 4935


Etiketler : c#,Base64,ToBase64String,OpenFileDialog,image to Base64,encode,decode,WinForms Project,PictureBox
Leave a Comment:

Bunlar da ilginizi çekebilir
Unutulan SQL SA Şifresini Değiştirme
SQL SA şifresini unuttuysanız, değiştirmek için pratik bir yol var...
Windows 7 Kısayolları
Gündelik kullanımda işinize yarayabilecek birkaç windows 7 kısayolu.
Güvenli Şifre Oluşturma
Şifrelerinizin güvenliği için dikkat etmeniz gereken noktalar neler?
 

En çok Okunanlar



Bumerang - Yazarkafe