Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
Save a text file locally with a filename, by triggering a download in JavaScript
* Save a text file locally with a filename by triggering a download
var text = "hello world",
blob = new Blob([text], { type: 'text/plain' }),
anchor = document.createElement('a'); = "hello.txt";
anchor.href = (window.webkitURL || window.URL).createObjectURL(blob);
anchor.dataset.downloadurl = ['text/plain',, anchor.href].join(':');;
Copy link

cirocorvino commented Jun 6, 2018

thanks is a great solution

Copy link

technosmarter commented Jul 26, 2018

In the network tab of the dev tool, this URL fails: // It triggers a .txt file download. –
Anyone, please help me ....My Link

Copy link

jbreckmckye commented Sep 7, 2018

Don't forget to revoke the object URL to free the memory - they don't get garbage collected

Copy link

CesMak commented Apr 20, 2019

does not work for me....

but this worked:

function download(filename, text) {
  var element = document.createElement('a');
  element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text));
  element.setAttribute('download', filename); = 'none';


// Start file download.
download("hello.txt","This is the content of my file :)");

Copy link

chuannm commented Nov 15, 2019

Great! It worked with Google Chrome 78.0.3904.97.
Thank you so much!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment