バイナリファイル内の特定の16進オフセットの内容をC#に置き換えるにはどうすればよいですか?C#の特定の16進オフセットを置換する
私のオフセットは0x33347で、その内容は06です。06を17に変更したいと思います。どうすればいいですか?私はヘックス編集の経験がほとんどないので、自分自身を何とか描くことができず、失われてしまった。
バイナリファイル内の特定の16進オフセットの内容をC#に置き換えるにはどうすればよいですか?C#の特定の16進オフセットを置換する
私のオフセットは0x33347で、その内容は06です。06を17に変更したいと思います。どうすればいいですか?私はヘックス編集の経験がほとんどないので、自分自身を何とか描くことができず、失われてしまった。
ストリームを読み取り/書き込みモードで開き、オフセットまで読み込み(ストリームがシークをサポートするかどうかを調べる)、バイトを書き込んだり、ストリームをフラッシュして閉じます。
FileStream
を使用して、ストリームのPosition
をオフセットに設定してから、バイトを書き込みます。
これは、現在のコンテンツを必要なもので上書きします。
using(var fs = new FileStream("path to file",
FileMode.Open,
FileAccess.ReadWrite))
{
fs.Position = 0x33347;
fs.WriteByte(Convert.ToByte(0x6));
}
ありがとうございました。この例は私を助けました。 – Lazze