3
A
回答
2
如果用户信任您,您可以直接在他的文件系统中创建XML文件。 Mozilla Firefox的 示例代码:
function mozillaSaveFile(filePath,content)
{
if(window.Components) {
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var file = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
file.initWithPath(filePath);
if(!file.exists())
file.create(0,0664);
var out = Components.classes["@mozilla.org/network/file-output-stream;1"].createInstance(Components.interfaces.nsIFileOutputStream);
out.init(file,0x20|0x02,00004,null);
out.write(content,content.length);
out.flush();
out.close();
return true;
} catch(ex) {
return false;
}
}
return null;
}
,如果你需要的所有浏览器都支持,看看它是如何中实现http://www.tiddlywiki.com
编辑:这并不适用于火狐17+工作,因为改变特权被视为不安全并被删除。在这里看到更多的细节:https://bugzilla.mozilla.org/show_bug.cgi?id=546848#c57
3
您可以创建一个数据URI。大多数现代浏览器应该能够理解它。请参阅http://en.wikipedia.org/wiki/Data_URI_scheme
14
尝试以后有什么安德烈亚斯说,我要补充一句:
脚本:
function createAndOpenFile(){
var stupidExample = '<?xml version="1.0" encoding="utf-8"?><aTag>something</aTag>';
document.open('data:Application/octet-stream,' + encodeURIComponent(stupidExample));
}
你有一个这样的链接,请注意the new download atribute,有了它,你把文件名称。
<a href="#" onclick="createAndOpenFile()" download="file.xml">Donwload</a>
它的工作原理,至少在Chrome 27和Firefox 21
改进,欢迎:-)
+1
这是一个很好的答案,荣誉。它也不是基于非标准的JS,如接受的答案。 +1。 – Michael 2013-06-21 13:56:53
11
您可以使用斑点如本例所示http://html5-demos.appspot.com/static/a.download.html
你可以有一个javacript函数用下面的代码
var xmltext = "<sometag><someothertag></someothertag></sometag>";
var pom = document.createElement('a');
var filename = "file.xml";
var pom = document.createElement('a');
var bb = new Blob([xmltext], {type: 'text/plain'});
pom.setAttribute('href', window.URL.createObjectURL(bb));
pom.setAttribute('download', filename);
pom.dataset.downloadurl = ['text/plain', pom.download, pom.href].join(':');
pom.draggable = true;
pom.classList.add('dragout');
pom.click();
相关问题
- 1. 如何使用ASP.NET创建XML文件并提示下载?
- 2. 如何使用Play框架创建和下载文件?
- 3. 如何创建XML文件?
- 4. 如何使用C#下载XML文件?
- 5. 如何使用XML文件创建上下文菜单?
- 6. jQuery/Javascript为用户下载创建一个文本文件
- 7. xml - 如何创建/运行XML文件
- 8. 如何使用MSBuild创建XML文件?
- 9. 如何使用Java创建xml文件?
- 10. 如何用jquery创建xml文件
- 11. 如何下载XSLT文件使用JavaScript
- 12. 如何创建rar/zip文件和下载
- 13. 从JavaScript创建可下载的附件?
- 14. vs2008:创建和使用xml文件
- 15. 如何下载在asp.net中创建该文件的文件
- 16. 如何从网址下载xml文件
- 17. 使用javascript创建和修改xml文件
- 18. 如何使用wget创建链接以下载文件?
- 19. 使用laravel,我如何创建动态文件下载?
- 20. 如何使用PHP为文件创建下载链接?
- 21. Google应用脚本:如何创建可下载的html文件?
- 22. 如何使用python下载创建的PDF文件?
- 23. 需要帮助创建Cron来每天下载XML文件
- 24. 如何创建一个.BAT文件来下载和解压zip文件?
- 25. 用JavaScript下载PDF文件
- 26. 使用Javascript下载文件
- 27. 创建XML文件
- 28. 创建xml文件
- 29. 如何使用xml,xsl和png文件创建mhtm
- 30. 如何使用jquery创建和读取xml文件
如果文件已经存在,只需要cr请求链接到该文件的URL。如果不是这种情况,我敢肯定你必须使用服务器端代码来做到这一点。 – 2011-02-28 14:53:42
创建XML字符串是很简单的部分。在浏览器中合成一些东西变成一个“可下载”的文件很难,如果不是不可能的,它可以在所有(合理的)浏览器中运行。 – Pointy 2011-02-28 14:55:21