您好,匿名用户
随意问技术百科期待您的加入

如何在Firefox下使用利用JS创建文件

0 投票

在IE下可以使用ActiveXObject来创建,而且需要将浏览器设置为安全性最低。
有如下代码:

function getfile()
{
        var creatFile=new ActiveXObject("Scripting.FileSystemObject");
    var f1=creatFile.CreateTextFile("f:\\codeTest\newTxt.txt",true);
        f1.WriteLine("The first line");//写一行
        f1.WriteBlankLines(1);
        f1.Write("这个是第二个行!");
        f1.Close();//文件写完,关闭
        var f2=creatFile.GetFile("f:\\codeTest\newTxt.txt");
        if(f2!=null)
        {
                alert("文件创建成功!");
        }
        else
        {
                alert("文件没有创建成功!");
        }
                
        //alert("这个文件相关信息"+DateLastModifide);
}`

HTML代码如下:
`<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script language="javascript" type="text/javascript" src="createFile.js"  ></script>
<title>无标题文档</title>
</head>
 
<body>
 
<p>测试开始!</p>
<div style=" text-align:center">
<p>
 
<input type="button" id="createFile" value="创建新文件"  onclick="getfile()"/>
</p>
</div>
</body>
</html>

但是这段代码在IE下报这样的错误:

Bad file name or number!

而且在WEB目录下也没有发现创建的新文件。
请问是怎么回事。如果说不能用那么微软设计的ActiveXObject这个东西有什么实用价值??

用户头像 提问 2012年 12月1日 @ Urgot 上等兵 (262 威望)
分享到:

1个回答

0 投票
 
最佳答案

firefox不能用js创建客户端的文件,这个关系到安全性,如果创建文件,必须要有一个地方储存。这样js就要访问客户端的文件系统,如果js可以访问客户端的文件系统,客户端的很多隐私文件就会被访问。
你可以用cookie或是html5 里面的sessionstorage, localStorage 储存临时变量。

用户头像 回复 2012年 12月1日 @ Garen 上等兵 (269 威望)
选中 2012年 12月1日 @Urgot
提一个问题:

相关问题

0 投票
1 回复 29 阅读
0 投票
1 回复 65 阅读
用户头像 提问 2012年 12月1日 @ LeBlanc 上等兵 (289 威望)
0 投票
1 回复 74 阅读
用户头像 提问 2012年 12月1日 @ Graves 上等兵 (254 威望)
+1 投票
1 回复 37 阅读
用户头像 提问 2013年 10月2日 @ Galio 上等兵 (289 威望)
+1 投票
1 回复 139 阅读
用户头像 提问 2012年 12月1日 @ Lux 上等兵 (267 威望)

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...