如何以十六进制打开,编辑和保存二进制文件?

leeccing 2007-05-31 10:36:30
如何以十六进制打开,编辑和保存二进制文件?
...全文
337 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
王集鹄 2007-06-01
  • 打赏
  • 举报
回复
//参考如下代码,没有测试过

procedure TForm1.Button1Click(Sender: TObject);
var
vMemoryStream: TMemoryStream;
vFileName: string;
vStart, vEnd: Integer;
vBuffer: string;
I: Integer;
begin
vFileName := 'c:\temp\temp.dat';
vStart := $123;
vEnd := $456;
SetLength(vBuffer, vEnd - vStart + 1);
vMemoryStream := TMemoryStream.Create;
try
vMemoryStream.LoadFromFile(vFileName);
vMemoryStream.Seek(vStart, soFromBeginning);
vMemoryStream.Read(vBuffer[1], Length(vBuffer));
for I := 1 to Length(vBuffer) do
vBuffer[I] := Chr(Ord(vBuffer[I]) xor $ff);
vMemoryStream.Seek(vStart, soFromBeginning);
vMemoryStream.Write(vBuffer[1], Length(vBuffer));
vMemoryStream.SaveToFile(vFileName);
finally
vMemoryStream.Free;
end;
end;
leeccing 2007-06-01
  • 打赏
  • 举报
回复
我想以十六进制打开exe文件,把特定范围比如 123H-456H的每个字节做xor运算,
然后保存.这样该怎么写?
谢谢.
leeccing 2007-06-01
  • 打赏
  • 举报
回复
可以了.再慢慢研究下.
谢谢.
王集鹄 2007-05-31
  • 打赏
  • 举报
回复
http://download.csdn.net/source/160432

5,392

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧