在C#中读取编辑和写入.bin文件

问题描述

我刚开始使用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是有关使用二进制读取器/写入器进行读写的简单教程。