好的,所以我是 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/