LOCAL HTML文件生成文本文件

时间:2014-02-03 10:57:39

标签: html

我正在尝试从 LOCAL HTML 文件生成TEXT / XML文件。我知道在本地生成文件有很多答案,通常建议使用ActiveX对象或HTML 5。 我猜有一种方法可以让它在所有浏览器上运行(最后HTML扩展由浏览器打开,即使它是一个LOCAL文件)也很容易,因为这是用户自己输入的LOCAL文件。

我的HTML文件将在客户端的本地计算机上,而不是通过HTTP访问。 它基本上只是一个用HTML编写的表单,在“SAVE”命令下应该在本地磁盘(用户决定的任何地方)生成XML文件并保存表单的内容。

有什么好办法吗?

2 个答案:

答案 0 :(得分:0)

我能想到的一种方法是,可以将html表单元素设置为类变量,然后使用jaxb上下文,可以创建一个XML文件。

有用的链接:http://www.vogella.com/tutorials/JAXB/article.html

答案 1 :(得分:0)

您可以使用base64 data-urls(不支持IE9-)下载文件:

首先,您需要为要下载的文件创建临时iframe元素:

var ifrm = document.createElement('iframe');
ifrm.style.display = 'none';
document.body.appendChild(ifrm);

然后,您需要定义要下载的文件内容,并将其转换为base64 data-url:

var html = '<!DOCTYPE html><html><head><title>Foo</title></head><body>Hello World</body></html>';
htmlurl = btoa(html);

并将其设置为iframe

的来源
ifrm.src = 'data:text/x-html;base64,'+htmlurl;