在javascript中重命名文件

在javascript中重命名文件,javascript,activex,file-rename,Javascript,Activex,File Rename,我想问,如果我想用javascript重命名一个文件,我能做什么?我尝试了一个功能,我看到它在线,但无法工作 function ChangeFileName() { var fso, f; fso = new ActiveXObject("Scripting.FileSystemObject"); f = fso.GetFile("FilePath/MyFile.txt"); f.name = "MyFile.htm"; } 我在网上搜索,它说ActiveXO

我想问,如果我想用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中重命名文件?提前感谢您的帮助。

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

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

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

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

function MoveFile2Desktop(filespec)
{
   var fso;
   fso = new ActiveXObject("Scripting.FileSystemObject");
   fso.MoveFile(filespec, "newname");
}

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

宿主对象可以提供这种方法

在典型的web浏览器中,从网页加载的JavaScript可以使用的宿主对象(
窗口
)不公开此类对象。网页不允许编辑访问其网站的人的磁盘。(例外是IE、ActiveX和一些安全警告)


如果您在浏览器扩展或其他环境(如node.js)中运行JavaScript,则可能会发生这种情况。

您要更改的文件位于客户端(使用浏览器的用户)或服务器(为web服务器提供服务)上?我想您不能。浏览器中的Javascript并不是为了处理本地操作系统,当然也不是以跨平台的方式。