2

我想问如果我想用javascript重命名一个文件,我该怎么办?我尝试了一个我在网上看到但无法工作的功能。

function ChangeFileName()
{
    var fso, f;
    fso = new ActiveXObject("Scripting.FileSystemObject");
    f = fso.GetFile("FilePath/MyFile.txt");
    f.name = "MyFile.htm";
} 

我在网上搜索,它说 ActiveXObject 仅适用于 IE,我打算在 mozilla 上使用它,因为 mozilla 带有 ubuntu。

除此之外,是否有任何方法可以重命名 javascript 中的文件?在此先感谢您的帮助 。

4

3 回答 3

2

它是 Javascript(在浏览器中),对吧?

如果您在浏览器中运行,出于安​​全原因,它是不允许的。我认为有一些方法可以使用 IE 和 ActiveX 来做到这一点,但使用纯 Javascript 我认为这是不可能的。

但是您可以在控制台中的 JScript 中执行操作,例如删除单个文件:

function MoveFile2Desktop(filespec)
{
   var fso;
   fso = new ActiveXObject("Scripting.FileSystemObject");
   fso.MoveFile(filespec, "newname");
}
于 2012-05-16T12:51:30.383 回答
0

不,您不能使用 javascript 重命名文件。Javascript 无法以任何方式与用户的计算机进行交互——它仅用于与呈现它的网页的内容进行交互。

于 2012-05-16T12:48:08.510 回答
0

JavaScript 没有与文件系统交互的内置方法。

宿主对象可能会提供这样的方法。

window可用于从典型 Web 浏览器中的网页加载的 JavaScript的宿主对象 ( ) 不公开此类对象。网页不允许编辑访问他们网站的人的磁盘。(IE 例外,带有 ActiveX 和一些安全警告)。

如果您在浏览器扩展或不同的环境(例如 node.js)中运行 JavaScript,那么它可能是可能的。

于 2012-05-16T12:52:31.517 回答