我在谷歌Apps脚本创建的文件如下如何使用Google Apps脚本下载创建的csv文件?
DocsList.createFile(
"test.csv",
"Row1Col1,Row1Col2 \r\n Row2Col1,RowCol2 \r\n Row3Col1,Row3Col2");
如何以编程方式下载(例如经由弹出下载对话框)?
我在谷歌Apps脚本创建的文件如下如何使用Google Apps脚本下载创建的csv文件?
DocsList.createFile(
"test.csv",
"Row1Col1,Row1Col2 \r\n Row2Col1,RowCol2 \r\n Row3Col1,Row3Col2");
如何以编程方式下载(例如经由弹出下载对话框)?
尝试使用ContentService,可以触发下载,甚至通过TextOutput.downloadAsFile method设置文件名。您也可以设置返回数据的内容MIME类型,但仅限于predefined enum constant。见their examples。
如果你想显示在客户端的下载对话框,然后下面的代码工作。这是一个CSV文件的例子。
return ContentService.createTextOutput("bbb,aaa,ccc").downloadAsFile("MyData.csv")
.setMimeType(ContentService.MimeType.CSV);
无法在Chrome 55.0.2883.95(64位)为我工作。我创建了一个附加到包含上述功能的电子表格的Apps脚本。当我尝试运行该功能时,我看到“准备执行”,然后是“运行功能...”。没有SaveAs对话框出现并且没有文件被写入。还有什么需要使其工作? –
同样在这里,没有任何反应...... –
下载与应用程序脚本,你需要可以发布应用程序文件,并使用doGet()方法(否则“downloadFileAs”将无法正常工作)
OR ...
在Drive中创建文件,并在对话框中提供一个链接。 这里是连接两个选项,一个用户需要在其他中记录不taken from here
var dat=getFileDataFromAnotherFunction();
var file = DriveApp.createFile('name.csv',dat);
var t = HtmlService.createTemplateFromFile('DownloadDialog');
t.url1 = getDlUrl(file);
t.url2 = file.getDownloadUrl().replace('&gd=true','')
rt = t.evaluate().setSandboxMode(HtmlService.SandboxMode.IFRAME);
uia.showModalDialog(rt,'Download the csv')
其中“DownloadDialog.html”
是以下文件(另在脚本编辑器)
<div>
<a target="_blank" href="<?= url1 ?>"> l1 </a>
<br>
<hr>
<a target="_blank" href="<?= url2 ?>"> link 2 </a>
</div>
'.setSandboxMode()'不再需要了(我想它甚至会在抛出错误时调用) –
谢谢,但每当我尝试在JsonP示例中提供的代码,我得到以下错误:“未捕获的SyntaxError:意外的令牌<”,任何想法如何测试它? –
我为最后一条评论中存在的问题添加了一个新线程,如果您也可以在这个问题上伸出援助之手,那将非常棒!您可以通过以下链接找到它:http://stackoverflow.com/questions/14041124/jsonp-with-google-apps-script,谢谢:) –