c# 有一个bin文件,请问应该如何去修改bin文件内的指定位置的内容
要修改一个二进制文件中的指定位置的内容,可以使用 C# 的二进制文件读写功能。以下是一个基本的示例,演示如何打开一个二进制文件,将文件指针移动到指定位置,然后写入新的字节:
using System;
using System.IO;
class Program
{
static void Main(string[] args)
{
string fileName = "example.bin";
int offset = 0x10; // 指定要修改的偏移量
byte[] newBytes = { 0x12, 0x34, 0x56, 0x78 }; // 指定要写入的新字节
using (FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.ReadWrite))
{
fs.Seek(offset, SeekOrigin.Begin); // 将文件指针移动到指定位置
fs.Write(newBytes, 0, newBytes.Length); // 将新字节写入文件
}
Console.WriteLine("文件修改成功。");
}
}
这个示例打开一个名为 "example.bin" 的二进制文件,将文件指针移动到偏移量为 0x10 的位置,然后将新字节 {0x12, 0x34, 0x56, 0x78} 写入该位置。最后,程序输出一个消息,指示文件修改已成功完成。注意,如果要将二进制文件的特定位置视为 C# 中的数组索引,请注意要将偏移量与文件的基础偏移量进行相加。
flseek改变文件指针,然后写文覆盖内容