私はJavaScriptでWindowsStoreの開発をいじっていますが、バイナリファイルからバイト配列を取得する方法に固執しているようです。オンラインでいくつかの例を見つけましたが、私のファイルは画像であるのに対し、それらはすべてテキストでしか読めないようです。私はこのようにファイルを開いています:
Windows.Storage.FileIO.readBufferAsync(photos[currentIndex]).done(function (buffer) {
var dataReader = Windows.Storage.Streams.DataReader.fromBuffer(buffer);
var fileContent = dataReader.readString(buffer.length);
dataReader.close();
// do something with fileContent
});
ファイルはどこphotos[currentIndex]
にありますか(からロードされますgetFilesAsync()
)。もちろん、この場合のエラーは、readString
バイナリデータで失敗することです。「文字」を文字列にマップすることはできません。私もこれを試しました:
Windows.Storage.FileIO.readBufferAsync(photos[currentIndex]).done(function (buffer) {
var bytes = [];
var dataReader = Windows.Storage.Streams.DataReader.fromBuffer(buffer);
dataReader.readBytes(bytes);
dataReader.close();
// do something with bytes
});
しかしbytes
、空なので、これを間違って使用していると思います。ここでは単純なものを見落としていると思いますが、何らかの理由で、バイナリファイルをバイト配列に読み込む正しい方法が見つからないようです。誰かが助けるために2番目の目を提供できますか?