写一个方法把字符串转txt文件(blob)并下载
在前端开发中,如果你想将一个字符串转换为一个 .txt
文件并提供下载,你可以使用 JavaScript 的 Blob
对象和 URL.createObjectURL()
方法。以下是一个简单的函数,它接受一个字符串作为参数,并触发浏览器的下载功能,将该字符串保存为一个 .txt
文件:
function downloadStringAsTextFile(str, fileName = 'output.txt') {
// 创建一个 Blob 对象,包含要下载的数据
const blob = new Blob([str], { type: 'text/plain' });
// 创建一个指向 Blob 对象的 URL
const url = URL.createObjectURL(blob);
// 创建一个临时的 a 标签来触发下载
const a = document.createElement('a');
a.href = url;
a.download = fileName; // 设置下载文件的名称
a.style.display = 'none'; // 隐藏 a 标签
// 将 a 标签添加到文档中,并模拟点击事件来触发下载
document.body.appendChild(a);
a.click();
// 清理:移除 a 标签,并释放 Blob 对象占用的资源
document.body.removeChild(a);
URL.revokeObjectURL(url);
}
你可以这样调用这个函数:
const myString = '这是一些要保存为 .txt 文件的文本内容。';
downloadStringAsTextFile(myString, 'myFile.txt'); // 第二个参数是可选的,用于设置下载文件的名称