How to change name of file in javascript from input=File

后端 未结 3 962
情深已故
情深已故 2021-02-01 19:29

I need to change the filename (not the file, just the metadata of the name) when uploading to a sharepoint site.

I figured that it would be easy enough to change the htm

3条回答
  •  不知归路
    2021-02-01 20:22

    From reading https://developer.mozilla.org/en-US/docs/Web/API/File/File#Syntax the bits parameter of the File constructor can be an array of Blob objects.

    bits

    An Array of ArrayBuffer, ArrayBufferView, Blob, USVString objects, or a mix of any of such objects, that will be put inside the File. USVString objects are encoded as UTF-8.

    From reading https://developer.mozilla.org/en-US/docs/Web/API/File#Methods it turns out the File inherits from Blob:

    The File interface doesn't define any methods, but inherits methods from the Blob interface

    Therefore, new File([originalFile]) is valid.

    I came up with the following which works for me:

    function renameFile(originalFile, newName) {
        return new File([originalFile], newName, {
            type: originalFile.type,
            lastModified: originalFile.lastModified,
        });
    }
    

提交回复
热议问题