如何从数据uri下载文本文件时更改文件名和扩展名

时间:2014-11-05 12:15:08

标签: javascript angularjs

当我下载数据uri(这适用于chrome / FF)时,使用

url1 = "data:attachment/plain;base64,encodeuri(<base64data-xyz>)"

这里使用附件mime类型强制下载,使用任何其他mime类型(text / html)将打开新标签中的文件内容,因为我想下载,我使用attachment / plain-xyz [MIME类型]

我尝试了下载属性,但每次下载的文件名都是“下载”,并且没有扩展名,因此它在我的下载文件夹中显示为“.FILE”,而我需要使用“变量”存储它.TXT“

请指导我如何将“download.FILE”更改为某些“variable.txt”,我已经尝试了数据的所有属性,下载,数据下载,内容处理,甚至尝试设置pom属性等。

请帮助将下载的文件内容转换为具有一些文件名和.txt作为扩展名的文件

2 个答案:

答案 0 :(得分:1)

FileSaver.js 提供了处理这些

的简便方法

答案 1 :(得分:0)

// Sanitizing the filename:
$filename = preg_replace('/[^a-z0-9\-\_\.]/i','',$_POST['filename']);

// Outputting headers:
header("Cache-Control: ");
header("Content-type: text/plain");
header('Content-Disposition: attachment; filename="'.$filename.'"');

或thisk链接可能会有所帮助 [http://www.jtricks.com/bits/content_disposition.html][1]