gpt4 book ai didi

javascript - 如何获取存储在javascript文件输入中的文件字典?

转载 作者:行者123 更新时间:2023-11-28 06:11:57 25 4
gpt4 key购买 nike

现在我有这段代码可以转换 <input type="file" multiple/> 中选择的文件列表到 Base64 列表。

text = $('#input-' + id).val();
var files = document.querySelector('#files' + id + ' > input[type=file]').files;
if (text != '' || files.length > 0) {
var files_obj = [];
var reader = new FileReader();
reader.onload = function(readerEvt) {
var binaryString = readerEvt.target.result;
files_obj.push(btoa(binaryString));
};
for (var i = 0; i < files.length; i++) {
reader.readAsBinaryString(files[i]);
}
while (files_obj.length < files.length) {}
$('input[type="file"]').val("");
files_json = JSON.stringify(files_obj);
json = '{"action": "message", "from": ' + userId + ', "text": "' + text + '", "room": ' + id + ', "files": ' + files_json + '}';
socket.send(json);

现在我想将这些文件转换为字典:

files_obj = {"file1.txt": "fIle1bAse64==", "file2.png": "FilE2BaSE64=="}

如何实现?

最佳答案

我认为你想要的是:

var input = document.getElementById(id);
var files = input.files;
var obFiles = {};
for (var i = 0, f; f = files[i]; i++){
var reader = new FileReader();
reader.onload = (function(theFile) {
return function(e){
obFiles[theFile.name] = e.target.result;
}
})(f);
reader.readAsDataURL(f);
}

我认为它会起作用

关于javascript - 如何获取存储在javascript文件输入中的文件字典?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36301810/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com