如何在indexeddb中存储/获取由字符串和typedArray(音频/视频)组成的大数据

时间:2015-04-06 08:37:33

标签: javascript local-storage blob indexeddb

我在indexedDb中串行存储字符串和二进制数据的混合,类似

var mainData = [
    {d : string},
    {d : string},
    {d : typedArray},
    {d : typedArray},
    {d : typedArray},
    {d : string},
    {d : string}
];

现在我需要将此数据转换为 indexedDb 的blob文件,并让用户下载此文件。

从这个导出的文件中,我需要它的原始格式的完整数据。

字符串化方式

如果我将这些数据转换为blob文件,如 JSON 那样

var myblob = new Blob([stringifyData], {type: "application/json"});

文件的大小非常大,这对我的情况没用。

typedArray方式

我无法将此数据转换为blob文件,如 typedArray ,类似

var myblob = new Blob(mainData,  {type: 'application/octet-binary'}

这不起作用,因为indexedDb中有string和typed数组的mixuture数据。

mainData 应该是值的数组(typedArray),而不是对象数组。

所以我的问题是

  1. 如何将indexDb中的混合数据(字符串和二进制)导出为blob文件,以便稍后以原始格式使用这些数据。
  2. 有什么方法(也可以是其他客户端存储)我可以满足我的要求吗?

0 个答案:

没有答案