Javascript在指定目录中创建HTML文件

时间:2014-06-17 03:42:07

标签: javascript file-io

我知道自从创建HTML5以来,已经有很多新增功能使编程网站比以往更容易。看起来他们可能无法添加一个实际在指定目录中创建文件的文件系统(不管怎么说,我都不知道)。我一直在网上搜索,并没有发现在不使用第三方即JQuery,php,Javascript Libraries的情况下做这样的事情。我假设因为有纯粹的js库可以实现这一点,所以它是可能的,但我不确定。我想要做的是从我的JavaScript中生成的outerHtml输出一个html文件减去脚本源本身。请注意,我不希望客户端必须下载。

2 个答案:

答案 0 :(得分:1)

试试这个:

<head>    
<script type="text/javascript">
 function WriteToFile(passForm) {        
    set fso = CreateObject("Scripting.FileSystemObject");  
    set s = fso.CreateTextFile("C:\test.txt", True);
    s.writeline("HI");
    s.writeline("Bye");
    s.writeline("-----------------------------");
    s.Close();
 }
</script>   
</head>

<body>
<p>Fill out the form below:
</p>
<form onSubmit="WriteToFile(this)">
Type your first name:
<input type="text" name="FirstName" size="20">
<br>Type your last name:
<input type="text" name="LastName" size="20">
<br>
<input type="submit" value="submit">
</form> 

这只适用于IE。

另见:create a file using javascript in chrome on client side

答案 1 :(得分:1)

防止网页脚本在本地文件系统上创建文件是为了您自己的安全。您不希望您访问的网站在本地磁盘上使用病毒创建可执行文件。

有一个File System API in HTML5,但它是一种内部文件系统,用作用户数据的本地存储。

您可以通过返回值为Content-Disposition的HTTP标头attachment; filename=example.csv来强制用户保存文件。这将强制浏览器在本地保存文件。