2013-07-10 66 views
3

我想修改文件的名稱,如果發生什麼事情。我曾嘗試過file.name = file.name + 'extra text';,但它不起作用。上傳後如何更改文件名?HTML5文件API修改file.name

+0

你是否需要用新名稱(服務器端)保存文件,或者你試圖用JS重命名它? –

+0

我只需要使用JavaScript重命名它。 –

+0

您不能重命名它。您根本無法更改客戶端文件系統上的文件。 –

回答

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 demo,顯示本地存儲的文件列表和目標名稱字段意味着你要修改的文件,並將新名稱輸入字段:

enter image description here

後按更改按鈕。該 「test3.txt」 文件將被修改:

enter image description here

希望這是對你有幫助。

+0

哪些瀏覽器支持文件系統API? –

+0

Chrome。這就是現在。 –