javascript - IndexedDB 将范围另存为

标签 javascript filereader indexeddb

好的,所以我是 IndexedDB 的新手,对 Javascript 不是特别有经验。现在,我已经让代码工作,这样用户可以浏览到他们文件系统上的文件,并且在选择时,文件被分成 block (通过使用切片),这些 block 被转换为十六进制字符串,并且字符串(连同键)存储在 IndexedDB 中。

这种模式的好处是用户可以选择一个非常大的文件,而且由于我使用了正确的结构,整个文件不必一次全部加载到内存中。

现在,我正在尝试重新读取这些十六进制字符串,并让浏览器在用户单击按钮时弹出“另存为”对话框。问题是我还没有设法找到一种方法将数据从 IndexedDB 中“流”到另存为输入中。你们中有人知道这样做的方法吗?我的结局很短。

谢谢

最佳答案

IndexedDB 不能对记录进行部分(或投影)读/写。 FileSystem API 似乎很可能,因为它适用于像对大文件进行顺序搜索这样的用例,但我不确定。

您可能想查看最近的讨论,IndexedDB, Blobs and partial Blobs - Large Files .他们也会讨论解决您的问题的方法。

关于javascript - IndexedDB 将范围另存为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20669757/

相关文章:

javascript - 使用增量改进客户端-服务器数据同步功能

javascript - 具有复合索引的 IDBKeyRange 的奇怪行为

javascript - 检查并增加 IndexedDB 的版本号。

javascript - 如何计算年度 Angular 4的总和

javascript - 向输入 ='range' 添加值会导致图形错误

javascript - 当依赖 Node 模块被 require() 时,什么时候(编译/运行时)链接到项目?

android - Android 中文本文件的 FileReader

javascript - Typescript 日期减法结果为 0,而不是实际的时间差。

javascript - 循环遍历 FileReader 的文件,输出始终包含循环的最后一个值

javascript - HTML5 FileReader.readAsDataURL 的输出可以用于引用字体吗?