![]()
![]()
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Base64
{
public partial class Form1 : Form
{
private string base64Str;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
string str = this.textBox1.Text;
var ebytes = System.Text.Encoding.Default.GetBytes(str);
//bytes进行base64加密
var strBase64 = Convert.ToBase64String(ebytes);
this.textBox2.Text = strBase64;
}
private void button2_Click(object sender, EventArgs e)
{
byte[] bytes = Convert.FromBase64String(this.textBox3.Text);
string str = Encoding.GetEncoding("UTF-8").GetString(bytes);
this.textBox4.Text = str;
}
private void button3_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "所有文件|*.*";
if (ofd.ShowDialog() == DialogResult.OK)
{
if (ofd.FileName != "")
{
this.textBox5.Text = System.IO.Path.GetFullPath(ofd.FileName);
}
}
}
private void button4_Click(object sender, EventArgs e)
{
string path = textBox5.Text; //界面上第一个文件路径
string tempPath = textBox6.Text; //界面上第二个文件路径
FileStream filestream = new FileStream(path, FileMode.Open);
byte[] bt = new byte[filestream.Length];
//调用read读取方法
filestream.Read(bt, 0, bt.Length);
this.base64Str = Convert.ToBase64String(bt);
filestream.Close();
//将Base64串写入临时文本文件
if (File.Exists(tempPath))
{
File.Delete(tempPath);
}
FileStream fs = new FileStream(tempPath, FileMode.Create);
byte[] data = System.Text.Encoding.Default.GetBytes(this.base64Str);
//开始写入
fs.Write(data, 0, data.Length);
//清空缓冲区、关闭流
fs.Flush();
fs.Close();
}
private void button5_Click(object sender, EventArgs e)
{
string outPath = textBox7.Text; //界面上第三个文件路径
var contents = Convert.FromBase64String(this.base64Str);
using (var fs = new FileStream(outPath, FileMode.Create, FileAccess.Write))
{
fs.Write(contents, 0, contents.Length);
fs.Flush();
}
}
}
}