ファイルを読み込むC言語のプログラムをemscriptenでjavascriptに変換して

ブラウザからローカルファイルを、このスクリプトに読み込ませて、処理を実行する。
この具体例を示してください。

外部ファイル読み込みを行うサンプルソースはあるのですが、
ローカルファイルを読ませる例はないようなのですが

回答の条件
  • URL必須
  • 1人5回まで
  • 登録:2013/04/27 21:06:56
  • 終了:2013/05/03 16:14:56

ベストアンサー

id:ukyoweb No.1

ukyoweb回答回数1ベストアンサー獲得回数12013/04/27 21:46:29

ポイント170pt

パスを指定したデータ読み込みに関しては以下URLが参考になります。
http://mozakai.blogspot.jp/2012/03/howto-port-cc-library-to-javascript.html

もしも、C側のプログラムが標準入力からファイルを読み込むように作ってある場合以下を。
https://github.com/kripken/lzma.js

で、ローカルファイルを読み込むにはFileReaderを使うとよいかと思います。ファイルはinput要素やドラッグ&ドロップで取得できます。

var reader = new FileReader;
reader.readAsArrayBuffer(file);
reader.onload = function() {
fnExportedWithEmscripten(new Uint8Array(reader.result));
};

他13件のコメントを見る
id:ukyoweb

終了しちゃいました?
outputの方は現在のemscriptenだとnullの部分を空配列にすると正しく実行できるようです。
それと、htmlの方もfileioに渡す引数をnew Uint8Array(reader.result)にしてあげないとダメでしたね。

サンプルのほうはgithubにまとめましたのでそちらで。
https://github.com/ukyo/emscripten-fileio

2013/05/03 17:30:49
id:TAK_TAK

なぜ、出来ないのか、
実行するために必要な事が何であるのか洗い出せました。
ありがとうございます。

2013/05/04 16:53:41

この質問への反応(ブックマークコメント)

トラックバック

  • ブラウザだけでmidiファイルを楽譜に変換 こちらの質問で、どうにかそれが実行出来るようになりました。 http://q.hatena.ne.jp/1367064416 chromeでならば、ブラウザからmidiファイルをabc棋譜に変換
  • Emscriptenでファイル入出力 http://mozakai.blogspot.jp/2012/03/howto-port-cc-library-to-javascript.htmlhttp://q.hatena.ne.jp/1367064416http://qiita.com/kjunichi/items/47715431c1228bfdda90http://qiita.com/sassy_watson/items/3ec69b19a22a457362a9http
「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません