首页 > 解决方案 > 将文件保存在 angular.js 的特定文件夹中

问题描述

if (exportdata != null) {
  var blob = new Blob([s2ab(exportdata.filedata)], {
    type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
  });
  //saveAs provided by FileSaver.js
  saveAs(blob, exportdata.filename);
  framework.displayAlert('ERRORS.SUCCESS', 'Data downloaded successfully');
} else {
  framework.displayAlert('ERRORS.ERROR', data.error);
}


function s2ab(s) {
  var buf = new ArrayBuffer(s.length);
  var view = new Uint8Array(buf);
  for (var i = 0; i != s.length; ++i) view[i] = s.charCodeAt(i) & 0xFF;
  return buf;
}

saveAs()我已经给出了文件类型和文件名。它将以给定的文件名保存在下载文件夹中。但我想把它保存在D://Reports/sample/这条路上。有什么选择可以实现这一目标吗?

标签: javascriptangularjs

解决方案


这是无法做到的。出于明显的安全原因,浏览器不允许仅由用户将文件保存到特定位置(通过右键单击 -> 另存为)它不允许您设置目标文件夹。

否则想象一下,任何站点都可以将文件保存在您计算机上任何它想要的位置。

如果您需要将 Blob 保存到特定位置,则必须在服务器端进行。将 Blob 上传到您的服务器,然后您就可以将其保存到您想要的任何位置。


推荐阅读