如何用C#替换二进制文件中特定十六进制偏移量的内容?
为了使它更清楚,让我说我的偏移量是0x33347,它的内容是06.我想将06改为17.我该怎么做?我对十六进制编辑的经验很少,所以我无法自己解决任何问题,我有点迷失。
答案 0 :(得分:3)
使用FileStream
,将流的Position
设置为偏移量,然后写入字节。
这将用您想要的内容覆盖当前内容。
using(var fs = new FileStream("path to file",
FileMode.Open,
FileAccess.ReadWrite))
{
fs.Position = 0x33347;
fs.WriteByte(Convert.ToByte(0x6));
}
答案 1 :(得分:2)
以读写模式打开流,读取你的偏移量(或寻求你的流支持寻找),写你的字节,刷新并关闭流。