0

ボブ・ジェンキンスの完全なハッシュ関数をC#からVB.Netに変換しようとしていますが、次のことに固執しています。

a += (UInt32)(url[k + 0] + (url[k + 1] << 8) + (url[k + 2] << 16) + (url[k + 3] << 24))

VB.Netで上記のステートメントをどのように書くことができますか?

次の点に注意してください:

aはUInt32です
urlは文字列です
kは整数 です

次のことを試しましたが、うまくいきません。

a += url(k + 0) + (url(k + 1) << 8) + (url(k + 2) << 16) + (url(k + 3) << 24)

手動で型キャストを行わないようにするために、「OptionStrictOff」を使用しています。

4

2 に答える 2

0

vb は、文字列から整数 (char 値による) への型キャストをサポートしていないと思います。char を整数に変換し、それに対してシフトやその他の数学演算を行うために
使用します。Val(Mid(url,k,1))

于 2012-04-20T06:05:59.667 に答える