一: 文件转译成二进制
步骤简介:通过FileStream文件流、与BinaryReader二进制流,把文件转成二进制
示例: 如下图
//图片转二进制按钮点击事件
private void button1_Click(object sender, EventArgs e)
{
//实例化图片文件流
using (FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read))
{
//读取图片文件流中的二进制数据
using (BinaryReader br = new BinaryReader(fs))
{
//文件流的长度
int length = Convert.ToInt32(fs.Length);
//把二进制数据读取成文件流对应长度大小的byte字节
byte[] imgBytes = br.ReadBytes(length);
MessageBox.Show("保存成功");
}
}
}
二: 二进制流转文件
步骤简介: 把二进制数据放到MemoryStream流中,转译文件
示例:如下图
/// <summary>
/// 把二进制转成文件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button2_Click(object sender, EventArgs e)
{
//把二进制存放于缓冲区中
MemoryStream ms = new MemoryStream(imgBytes);
pictureBox2.Image = Image.FromStream(ms);
MessageBox.Show("转译成功");
}
全部代码如下:
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 YDTFileTest
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
static string path = "E:\\浏览器下载的东西\\.NetCoreEdit.jpg";
static byte[] imgBytes = null;
private void Form1_Load(object sender, EventArgs e)
{
using (FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read))
{
pictureBox1.Image = Image.FromStream(fs);
}
}
private void button1_Click(object sender, EventArgs e)
{
//实例化图片文件流
using (FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read))
{
//读取图片文件流中的二进制数据
using (BinaryReader br = new BinaryReader(fs))
{
//文件流的长度
int length = Convert.ToInt32(fs.Length);
//把二进制数据读取成文件流对应长度大小的byte字节
imgBytes = br.ReadBytes(length);
MessageBox.Show("保存成功");
}
}
}
/// <summary>
/// 把二进制转成文件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button2_Click(object sender, EventArgs e)
{
//把二进制存放于缓冲区中
MemoryStream ms = new MemoryStream(imgBytes);
pictureBox2.Image = Image.FromStream(ms);
MessageBox.Show("转译成功");
}
}
}
我是以图片为例,其他文件也是如此操作.
以上就是我了解的的文件与二进制互相转换的简单相关知识,大家有更加好用的知识,欢迎到评论区讨论!!