[英]How can I save the array of input type file in storage location?
嗨,我想保存输入类型文件的数组。
<input type="file" id="fuGerber" onchange="saveFiles(this.files)" multiple />
我已经尝试过了:
localStorage.setItem('files',JSON.stringify(files));
或这个:
localStorage.setItem('files',JSON.stringify(files[0]));
但是JSON.stringify返回空的“ {}”,或者在第二种情况下返回“ {” 0“:{}}”有人知道什么要保存它而不在数组内部丢失任何内容。
这是我的数组所具有的:
也许您缺少使用文件读取器从文件输入中实际读取数据的信息,然后将其存储在数组中,然后再将其保存到localStorage
。
在这里查看此答案。
更新:
因此,在JSFiddle中复制问题后,我终于意识到您遇到的麻烦。 问题是FileList不是数组( 请参阅此处 ),它是自定义列表类型。 结果,JSON编码器不知道如何正确编码。
要从FileList中获取数据,您必须手动创建FileList中每个File的文件对象,将每个对象推到array \\,然后就可以进行字符串化并将其设置为localStorage。
完成上述操作后,我能够成功保存文件: localStorage中的文件数组视图
参见我的代码示例:
干杯! 我希望这有帮助 :)
如果您尝试保存数组,请执行以下操作:
保存:
localStorage.setItem('files', JSON.stringify(files));
要从localStorage恢复:
value = localStorage.getItem('files');
result = JSON.parse(value);
对于文件,请检查此链接。 如何将映像保存到localStorage并将其显示在下一页上?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.