问题描述
我刚开始使用C#冒险。我想编写一个简单的程序,将使用OpenFileDialog
读取.bin文件,编辑文件的一部分,然后使用SaveFileDialog
保存文件。
不幸的是,我可能会遇到一些问题,因为我必须学习很多东西。这是我的阅读代码的一部分,但保存相同文件时遇到问题。基本上,我认为问题在于起始地址和结束地址,因为我不知道如何在write函数中声明它。
OpenFileDialog ofd = new OpenFileDialog();
private void button1_Click(object sender,EventArgs e)
{
ofd.ShowDialog();
BinaryReader br = new BinaryReader(File.OpenRead(ofd.FileName));
br.Close();
}
SaveFileDialog sfd = new SaveFileDialog();
private void button2_Click(object sender,EventArgs e)
{
sfd.ShowDialog();
BinaryWriter br= new BinaryWriter(File.OpenWrite(sfd.FileName));
br.Close();
}
我想回写相同的文件,文件的长度始终为8192字节,因此从0x0000到0x1FFF开始。
解决方法
如果我正确地理解了您,您正在尝试从文件中读取,编辑文件并保存编辑后的文件。我认为您所缺少的是实际阅读量
string s = br.ReadString();
写作
bw.Write(s);
到文件(bw是BinaryWriter)。
check out是有关使用二进制读取器/写入器进行读写的简单教程。