私はただEXIF情報を読みたいだけなんだけど
Windows Scripting HostのJScriptでバイナリI/Oをするためには小細工が必要である((メソッドread
の返り値の型はJScriptの中にない「Byte配列」なのでまともに扱えない.よってreadText
に頼ることになる.))
上のように,一番「生」のbyte列に近い「iso-1859-1テキストとして読み込み」をやっても,一部のbyte値がユーロ記号なんちゃらに変換されてしまうため,逆変換を行うことになる.上の方法ではforループで逆変換を行っているが(最小)完全ハッシュ関数を利用しようと思い立ち,ハマっている.使おうとしている完全ハッシュ関数はこちら*1:
- http://burtleburtle.net/bob/hash/perfect.html Minimal Perfect Hashing
上のCの関数ではunsigned 32bit intを使ってるから,signed 32bit intしか使えないJScriptでは多倍長演算しないといけないっぽい(高々2桁だが).
... forループの方が早いし速い気がしてきた(ぉぃ