我在包含CSV数据的flex(flash builder 4)应用程序中有一个String变量。我需要允许用户将此数据下载到本地文件。例如,给它们一个“csv”按钮进行单击,它可能会显示一个保存文件对话框(我将发送我的字符串变量的内容)。
这可能/如何?
我正在使用ResuableFX组件将数据网格转换为csv。这个代码我最终用于将字符串保存到用户的文本文件中(在Web浏览器中):
var dg2CSV:DataGrid2CSV = new DataGrid2CSV();
dg2CSV.includeHeader=true;
dg2CSV.target=adgEncounters;
var csvText:String=dg2CSV.getCSV();
var MyFile:FileReference = new FileReference();
var csvFileNameDT:String = QuickDateFormatter.format(new Date().toString(),"YYYYMMDDJJNNSS");
MyFile.save(csvText,"Encounters"+csvFileNameDT+".csv");
答案 0 :(得分:1)
如果您在AIR App中,则可以使用File。browseForSave()。
如果您使用的是网络应用,则可以使用FileReference.save()。 FileReference文档有更多关于此的信息。
在许多情况下,我建议使用navigateToURL()在Flash之外打开文件,让浏览器处理它。
我不确定在没有用户互动的情况下是否有办法做到这一点。