【发布时间】:2011-03-18 09:06:10
【问题描述】:
我从本地 HTML 文件加载了一些 JavaScript 代码(无需通过网络服务器).. 即,使用 file:// 打开
有没有办法可以使用此文件中的 JavaScript 代码写入本地文件?
我知道跨站限制不允许很多东西在 JavaScript 中,但这不是跨站,所以理论上应该是允许的。
【问题讨论】:
标签: javascript jquery
我从本地 HTML 文件加载了一些 JavaScript 代码(无需通过网络服务器).. 即,使用 file:// 打开
有没有办法可以使用此文件中的 JavaScript 代码写入本地文件?
我知道跨站限制不允许很多东西在 JavaScript 中,但这不是跨站,所以理论上应该是允许的。
【问题讨论】:
标签: javascript jquery
有一个 jQuery 插件 jQuery.twFile 可以让您读取和写入本地文件。
【讨论】:
如果是 Internet Explorer,您可以使用 ActiveX。
<html>
<head>
<script type="text/javaScript">
function WriteToFile()
{
var fso = new ActiveXObject("Scripting.FileSystemObject");
var txtFile = fso.CreateTextFile("c:\\TestFile.txt", true);
txtFile.WriteLine("This is a test");
txtFile.Close();
}
</script>
</head>
<body>
<p>
<script type="text/javaScript"> WriteToFile(); </script>
</p>
</body>
</html>
【讨论】:
浏览器中没有用于文件系统访问的本机 API*。你首先需要那个!
例如,在 Internet Explorer 中,它有一个 ActiveX 对象:
var fso = new ActiveXObject("Scripting.FileSystemObject");
...但它要求用户放松他们的浏览器设置。在其他浏览器上,您也许可以使用 jar (Java Archive) 文件。
您还可以查看非浏览器 JavaScript 容器提供的功能,例如Microsoft HTA 文件(HTML 应用程序)将很好地支持 Windows ActiveX FileSystemObject,前提是您的病毒检查软件允许 HTA 文件执行。
【讨论】: