JavaScript Criar e Salvar Arquivo
Este tutorial ensina como criar e salvar um arquivo em JavaScript.
É fácil criar arquivos e armazená-los no NodeJS do lado do servidor, mas há poucas opções para fazer isso no lado do cliente. Neste tutorial, escrevemos uma função personalizada que nos ajuda a criar arquivos usando dados e depois salvá-los. Em navegadores modernos, temos uma função chamada msSaveOrOpenBlob que nos ajuda a salvar um arquivo. Mas em navegadores mais antigos, primeiro geramos um link para o arquivo e depois o baixamos adicionando o atributo download
na tag âncora.
function downloadFiles(data, file_name, file_type) {
var file = new Blob([data], {type: file_type});
if (window.navigator.msSaveOrOpenBlob)
window.navigator.msSaveOrOpenBlob(file, file_name);
else {
var a = document.createElement('a'), url = URL.createObjectURL(file);
a.href = url;
a.download = file_name;
document.body.appendChild(a);
a.click();
setTimeout(function() {
document.body.removeChild(a);
window.URL.revokeObjectURL(url);
}, 0);
}
}
Na função acima, verificamos se o navegador tem suporte para msSaveOrOpenBlob
e, se encontrado, usamos para salvar o arquivo. Caso contrário, criamos uma tag âncora apontando para o arquivo criado. Adicionamos o atributo de download à tag âncora e anexamos essa tag ao corpo do documento. Usamos JavaScript para clicar nele, o que aciona o download e, dessa forma, salvamos o arquivo. Em seguida, removemos a tag âncora do corpo e revogamos o URL criado.
Harshit Jindal has done his Bachelors in Computer Science Engineering(2021) from DTU. He has always been a problem solver and now turned that into his profession. Currently working at M365 Cloud Security team(Torus) on Cloud Security Services and Datacenter Buildout Automation.
LinkedIn