2013-09-03 7 views
10

ウェブブラウザでは、ローカルファイルシステムの巨大ファイルのsha1チェックサムをサーバに送信せずに計算したいと考えています。ウェブブラウザでjavascriptを使用してファイルストリームを読む

File APIローカルディスクからファイルを読み取ることをサポートしていますが、ファイル全体を読み取り、それらをすべてメモリに格納すると思います。ファイルがシステムメモリより大きい場合、問題が発生することがあります。

Streams APIこの問題を解決するのに役立つようですが、APIを使用してファイルを読み取る方法が見つかりませんでした。

ウェブブラウザでjavascriptを使用してローカルディスクからファイルストリームを読み取る方法はありますか?

+0

hmm。 XMLHttpRequestは、URL.createObjectURLからblob URLを開くことができるようです。 – npcode

+0

この問題を解決する方法はありますか?私は同じことを知りたい。 – monkeymatrix

+0

@monkeymatrixまだありません。私はこの問題を解決するためにAPIを改善すべきだと思う。 – npcode

答えて

5

ファイルAPIは、Googleの暗号APIのデータ

var blob = file.slice(startingByte, endindByte); 

のチャンクにSHA1クラスを読み取ることができる必要がありますので、スライス方法を提供し、更新方法を提供し、あなたはupdateメソッドを供給することができるはずですあなたのチャンクと

ソース:

+0

ありがとう!それはとてもうまく動作し、私はここに例を書いています:https://gist.github.com/npcode/11282867 – npcode

関連する問題