JS导出文本为文本文件
代码示例
downloadTextFile
函数接受两个参数:text
是要导出的文本内容,fileName
是要保存的文件名。
函数内部,我们创建了一个 Blob 对象,将文本内容作为 Blob 的数据,并指定 MIME 类型为 'text/plain'
,表示纯文本类型。
然后,使用 URL.createObjectURL()
方法创建一个临时的 URL,将 Blob 对象与该 URL 相关联。
接下来,创建一个 <a>
元素,设置其 href
属性为该临时 URL,download
属性为文件名,以便浏览器将其作为下载链接。
将该 <a>
元素添加到文档的 <body>
中,模拟点击该链接来触发文件下载操作。
最后,使用 URL.revokeObjectURL()
方法释放创建的临时 URL。
function downloadTextFile(text, fileName) {
const blob = new Blob([text], { type: 'text/plain' });
const url = URL.createObjectURL(blob);
const link = document.createElement('a');
link.href = url;
link.download = fileName;
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
URL.revokeObjectURL(url);
}
调用示例
通过调用 downloadTextFile
函数,并传递要导出的文本内容和文件名,即可将文本导出为文本文件。
此外,由于涉及到创建临时 URL,建议在下载完成后及时释放临时 URL,以避免内存泄漏。
// 调用示例
const textContent = '这是要导出的文本内容';
const fileName = 'example.txt';
downloadTextFile(textContent, fileName);