当前位置 - 股票行情交易網 - 裝修設計 - Flash AS2將字符串強制轉換為數字?

Flash AS2將字符串強制轉換為數字?

新建壹個名為 MD5.as 的文件,然後把下面的代碼復制粘貼進去,保存。

/**

*?MD5?Class?v1.0

*?Author?:?Mika?Palmu

*?Licence?:?Use?freely,?giving?credit?when?you?can.

*?Website?:?t)

{

return?(num?<<?cnt)?|?(num?>>>?(32?-?cnt));

}

private?static?function?str2binl(str)

{

var?bin?=?new?Array();

var?mask?=?(1?<<?chrsz)?-?1;

for?(var?i?=?0;?i?<?str.length?*?chrsz;?i?+=?chrsz)

{

bin[i?>>?5]?|=?(str.charCodeAt(i?/?chrsz)?&?mask)?<<?(i?%?32);

}

return?bin;

}

private?static?function?binl2str(bin)

{

var?str?=?"";

var?mask?=?(1?<<?chrsz)?-?1;

for?(var?i?=?0;?i?<?bin.length?*?32;?i?+=?chrsz)

{

str?+=?String.fromCharCode((bin[i?>>?5]?>>>?(i?%?32))?&?mask);

}

return?str;

}

private?static?function?binl2hex(binarray)

{

var?hex_tab?=?hexcase"0123456789ABCDEF"?:?"0123456789abcdef";

var?str?=?"";

for?(var?i?=?0;?i?<?binarray.length?*?4;?i++)

{

str?+=?hex_tab.charAt((binarray[i?>>?2]?>>?((i?%?4)?*?8?+?4))?&?0xF)?+?hex_tab.charAt((binarray[i?>>?2]?>>?((i?%?4)?*?8))?&?0xF);

}

return?str;

}

private?static?function?binl2b64(binarray)

{

var?tab?=?"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";

var?str?=?"";

for?(var?i?=?0;?i?<?binarray.length?*?4;?i?+=?3)

{

var?triplet?=?(((binarray[i?>>?2]?>>?8?*?(i?%?4))?&?0xFF)?<<?16)?|?(((binarray[i?+?1?>>?2]?>>?8?*?((i?+?1)?%?4))?&?0xFF)?<<?8)?|?((binarray[i?+?2?>>?2]?>>?8?*?((i?+?2)?%?4))?&?0xFF);

for?(var?j?=?0;?j?<?4;?j++)

{

if?(i?*?8?+?j?*?6?>?binarray.length?*?32)

{

str?+=?b64pad;

}

else

{

str?+=?tab.charAt((triplet?>>?6?*?(3?-?j))?&?0x3F);

}

}

}

return?str;

}

}

然後使用的時候這樣寫:

//導入MD5類

import?MD5;

//輸出小寫:

trace(MD5.hash("測試"));

//輸出大寫:

trace(MD5.hash("測試",true));