我有要写入文件的数据,并打开文件对话框供用户选择保存文件的位置.如果它适用于所有浏览器会很棒,但它必须在Chrome中运行.我想在客户端做到这一点.
基本上我想知道在这个函数中放什么:
saveFile: function(data)
{
}
Run Code Online (Sandbox Code Playgroud)
在函数接收数据的情况下,用户是否选择保存文件的位置,并使用该数据在该位置创建文件.
使用HTML也很好,如果有帮助的话.
我一直在尝试找到一种可行的解决方案,但找不到。
我在javascript中有一个对象,其中有一些非英语字符。
我正在尝试以下代码将对象转换为Blob以供下载。
当我单击以下载内容时,在打开下载的JSON时,非英语字符变得乱七八糟。
这是一个像这样的简单对象: {name: "??????", last: "?????"}
function setJSONForDownload(obj) {
obj = obj || []; // obj is the array of objects with non-english characters
const length = obj.length;
if (length) {
const str = JSON.stringify(obj);
const data = encode( str );
const blob = new Blob( [ data ], {
type: "application/json;charset=utf-8"
});
const url = URL.createObjectURL( blob );
const downloadElem = document.getElementById('download');
downloadElem.innerText = `Download ${length} pages scraped`;
downloadElem.setAttribute( 'href', url );
downloadElem.setAttribute( 'download', 'data.json' ); …Run Code Online (Sandbox Code Playgroud)