如何在sessionStorage中保存输入文件类型信息?

时间:2019-06-28 08:24:51

标签: javascript jquery file-type

我有此代码可用于文件保存浏览,特别是图像。

我知道您不能以编程方式设置文件,出于安全原因,您必须转到文件夹弹出窗口才能选择文件。所以我的问题是,我希望将文件保存在sessionStorage中,以便用户重新加载页面时,他们不需要重新选择图像。

我正在使用这种方法。

var fileInput = document.getElementById('file');
sessionStorage.input = JSON.stringify(fileInput);

但是当我重新加载页面时,它不再起作用了。.

formData.append(fileInput.files[0].name, sessionStorage.input);

我试图做console.log(sessionStorage.inputFile),但它只打印'[目标文件]'

1 个答案:

答案 0 :(得分:0)

您可以使用以下代码将图像数据保存在会话存储中

var file = element.files[0];
var reader = new FileReader()
reader.onload = function(base64) {
    localStorage["file"] = base64;
}

//Store it in session storage
var img_base64 = localStorage["file"];

var base64_arr = img_base64_data.split(",");
var img_format = base64_arr[0].split(";")[1];
var img_content = base64_arr[1];

var file = new File([img_content], "<file name>", {type: img_format});

// get file as file.files[0] and store it in session storage