JavaScript技巧:如何将字符串转换为txt文件并实现下载?

11 min read

以下是一个简单的 JavaScript 方法,它将接收一个字符串作为参数,将其转换为文本文件,并自动下载:

function downloadTxtFile(text) {
  const fileName = "myFile.txt";
  const fileContent = new Blob([text], { type: "text/plain;charset=utf-8" });

  const downloadLink = document.createElement("a");
  downloadLink.download = fileName;
  downloadLink.href = URL.createObjectURL(fileContent);
  downloadLink.click();
}

要使用此方法,请调用它并传入您要保存的文本内容。例如:

const myString = "Hello, world!";
downloadTxtFile(myString);

此方法将创建一个 Blob 对象,并将其包装在一个 a 标签中。当用户单击链接时,将自动下载内容为 myFile.txt 文件的文本文件。

请注意,由于安全原因,浏览器将阻止自动下载文件,除非该操作是由用户触发的。特别是在某些浏览器中,浏览器可能会将此方法识别为弹出式窗口并阻止它。