Windows_/Windows_C# & App

C#: Base64 Encoder/Decoder 프로그램 소스

sosal 2014. 7. 24. 02:25
반응형

/*

 * http://sosal.kr/

 * made by so_Sal

 */

 

 

 

using System.Windows.Forms; //메시지 박스같은 윈도우폼에서 사용되는 도구 생성

 





 

 

 

 

C# 도구상자에서 지원하는 Label을 이용하여 Plain Text, BASE64 글자를 박아넣고

 

TextBox를 옆에 박고, 버튼까지 만들어줍니다~~

 

 

 

위에서 아래 TextBox 4개의 이름은 Encode1, Encode2, Decode1, Decode2라고 만들어 주었습니다.

 

class Base64String

{

public static string Base64Encoding(string str)

{

byte[] encbuff = System.Text.Encoding.UTF8.GetBytes(str);

return Convert.ToBase64String(encbuff);

}

 

public static string Base64Decoding(string str)

{

byte[] decbuff = Convert.FromBase64String(str);

return System.Text.Encoding.UTF8.GetString(decbuff);

}

}

 

 

base64 코드는 다음과같이 C#에서 기본적으로 Convert, Encoding 객체를 제공하기 때문에

위와같이 매우 간편하게 Base64 Encoding, Decoding Class를 구현할 수 있습니다.

 

 

Encode1 텍스트박스에 저장되어있는것을 Base64Encoding 함수에 넣어 인코딩 한 후에

Encode2 텍스트박스에 인코딩된 텍스트를 저장하면 되겠죠?

 

Decode1, Decode2 텍스트박스도 역시 마찬가지로 해주시면 됩니다~.

 

private void Encode_button_Click(object sender, EventArgs e)

{

    string plain_text = Encode1.Text;

    string Encode_text = Base64String.Base64Encoding(plain_text);

    Encode2.Text = Encode_text;

    Application.DoEvents();

}

 

private void Decode_button_Click(object sender, EventArgs e)

{

    string Decode_text = Decode1.Text;

    string plain_text = Base64String.Base64Decoding(Decode_text);

    Decode2.Text = plain_text;

    Application.DoEvents();

}