4

少し問題があります:)

  1. 文字列を編集して置換したいバイナリファイル -executable- があります
  2. PHPでファイルを開き、置換を実行して保存します
  3. 保存されたバイナリが破損しています。

SED または任意の 16 進エディタを使用して実行すると、問題なく動作します。

PHP を使用してバイナリ ファイルを開き、編集 (文字列を置換) して保存できますか?

どうもありがとうございました!

4

2 に答える 2

2

バイナリ ファイルとテキスト ファイルを区別するシステム (Windows など) では、fopen() モード パラメータに 'b' を含めてファイルを開く必要があります。次に、ファイルに対して fread と fwrite を使用します。

<?php
$fp = fopen('binary_file.bin', 'w+b');
fwrite($fp, '1');
fclose($fp);
?>
于 2012-04-04T13:06:38.377 に答える
-1

ファイルをバイトごとに読み取り、バイナリ比較を行い、バイトからバイトへの置換を行うことができます。Cコードのように見えるPHPコードを書く:D

于 2012-04-04T12:58:00.657 に答える