0
  1. HTML+JAVASCRITP+CSS を使用して、Adobe Air プラットフォームでデスクトップ ソフトウェアを開発しています
  2. md5値を同じphp md5値としてカウントするmd5.jsをダウンロードします
  3. air.filestream 関数はファイルの場所を読み取り、ハッシュをカウントするために md5.js に送信します。通常のファイル (js、php、css、txt) は同じ php md5 値としてカウントできますが、カウント画像ファイルは間違ったハッシュを取得し、画像はそうではありません変化する。
var fileStream = new air.FileStream(); 
var target = new air.File(file.nativePath); 
fileStream.open(target , air.FileMode.READ);
var str = fileStream.readMultiByte(target.size,'utf-8'); alert(window.md5(str));
4

1 に答える 1

1

バイナリデータの読み取りを行うこのライブラリを使用する必要があります。次に、swc を解凍し、swf ファイルをアプリ パスの lib フォルダーに取得します。

xml ファイルをチェックして、使用する md5 関数の修飾名を取得する必要があります (.by.blooddy.crypto.MD5.hashBytes(data) )。

HTMLヘッダーにスクリプトインクルード行を追加します

<script src="lib/library.swf" type="application/x-shockwave-flash"></script>

window.runtime オブジェクトを介して関数を使用できます。

hash = window.runtime.by.blooddy.crypto.MD5.hashBytes(data);

このハッシュは、php の md5 で取得できるものと同じになります。

ちなみに、readMultiByte の代わりに readBytes を使用してファイルを読み取る必要があります。

adobe link ( HTML ページ内での ActionScript ライブラリの使用)

于 2012-10-04T20:12:30.520 に答える