4

如果发生某些事情,我正在尝试修改文件名。我试过做file.name = file.name + 'extra text';,但它不起作用。文件上传后如何更改文件名?

4

1 回答 1

2

我假设您使用 HTML5 File API 将沙盒文件存储到本地文件系统。如果要修改现有文件的名称,则必须先获取 fileEntry 对象:

window.webkitRequestFileSystem(window.TEMPORARY, 1024*1024, function(fs){
    fs.root.getFile("targetFileFullName",{},function(fileEntry){
        fileEntry.moveTo("original path","newName");
    },errorHandler);
}, onError);

FileEntry.moveTo 函数帮助您移动或重命名文件。您只想重命名它,因此您所要做的就是为参数 2 分配新名称,并且不要更改文件路径参数。

我写了一个jsfiddl 演示,它显示了本地存储文件的列表,目标名称字段表示您要修改的文件和新名称输入字段:

在此处输入图像描述

按下更改按钮后。“test3.txt”文件将被修改:

在此处输入图像描述

希望这对你有帮助。

于 2013-07-10T14:44:53.630 回答