C# Form窗体打开BIN文件并读取二进制数据
C#Form窗体打开BIN文件并读取二进制数据目标:使用C# Form窗体打开BIN文件并读取二进制数据使用的关键类:C#的作为高级语言文件批量读取一般都是使用文件流处理,这离不开C#的System.IO 类的强大功能。使实现过程:这里简述一下实现过程:1、使用对话框类OpenFileDialog 来打开BIN文件类型的文件获取文件名路径2、使用FileStream类, 用他来打开文件获取文件长度
C# Form窗体打开BIN文件并读取二进制数据
目标:
使用C# Form窗体打开BIN文件并读取二进制数据
使用的关键类:
C#的作为高级语言文件批量读取一般都是使用文件流处理,这离不开C#的System.IO 类的强大功能。
使实现过程:
这里简述一下实现过程:
1、使用对话框类OpenFileDialog 来打开BIN文件类型的文件获取文件名路径
2、使用FileStream类, 用他来打开文件获取文件长度大小
3、使用读二进制类BinaryReader,按照字节来获取内容
4、最后连接成字符串返回
代码实例:
/// <summary>
/// 打开BIN文件得到路径,读取其中的二进制内容
/// </summary>
/// <returns>返回二进制数字符串</returns>
///
public static string OpenBinFile()
{
string bin_str ="";
byte[] binchar = new byte[] { };
int file_len;
//打开文件类
OpenFileDialog dialog = new OpenFileDialog();
//使用当前目录作为初始目录
dialog.InitialDirectory = System.AppDomain.CurrentDomain.BaseDirectory;
//文件过滤,仅打开bin
dialog.Filter = "bin文件(*.bin)|*.bin";
//关闭选择多文件
dialog.Multiselect = false;
if (dialog.ShowDialog() == DialogResult.OK)
{
//文件流类//用于文件的读写与关闭//来自于System.IO
FileStream fileStream = new FileStream(dialog.FileName, FileMode.Open);
//读二进制文件类
BinaryReader br = new BinaryReader(fileStream,Encoding.UTF8);
//获取bin文件长度
file_len = (int)fileStream.Length;
//得到所有字节
binchar = br.ReadBytes(file_len);
//累加每字节数组转字符串
foreach (byte j in binchar)
{
bin_str += "0x"+ j.ToString("X2")+" ";
}
//关闭 BinaryReader 对象和基础流
br.Close();
}
//返回字符串
return bin_str;
}
小结
1、BinaryReader类 和BinaryWriter 类一个读一个写,内容和方法都是类似,可以相互参考。
2 、二进制类的读写中有很多种方法函数,针对不同的数据类型,也可以穿插使用。需要强调的是类型切记不能使用错误。
3、FileStream 类的实例化时候,有3个参数,后面两个可以省略,其参数将作为默认参数处理。

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。
更多推荐
所有评论(0)