// 将数组保存为文件 function downloadArrayAsFile(array, filename) { const jsonStr = JSON.stringify(array); const blob = new Blob([jsonStr], { type: 'application/json' }); const url = URL.createObjectURL(blob); const a = document.createElement('a'); a.href = url; a.download = filename; a.style.display = 'none'; document.body.appendChild(a); a.click(); document.body.removeChild(a); URL.revokeObjectURL(url); } // 从文件还原数组 function readArrayFromFile(file, callback) { const reader = new FileReader(); reader.onload = function (event) { const content = event.target.result; const array = JSON.parse(content); callback(array); }; reader.readAsText(file); } // 示例用法 const originalArray = [1, 2, 3, 4, 5]; const filename = 'myArray.json'; // 下载保存数组为文件 downloadArrayAsFile(originalArray, filename); // 模拟用户上传文件 const fileInput = document.createElement('input'); fileInput.type = 'file'; fileInput.addEventListener('change', function () { const file = fileInput.files[0]; readArrayFromFile(file, function (restoredArray) { console.log('Restored Array:', restoredArray); }); }); // 将fileInput添加到页面中,并触发选择文件的操作 document.body.appendChild(fileInput);
网友回复