dataTransfer文件名包含“乱码”字符

时间:2018-10-25 10:40:26

标签: javascript file utf-8 drag-and-drop

编辑:如果您知道正确的术语而不是“乱码”,请随时进行更改。

Edit2 :当我从WINDOWS计算机上载时,它可以正常工作。但是,当我从Mac上传时,它会出现“乱码”。当文件存储在Mac上时,似乎字符已经错误了。

上传带有utf8字符的文件时,在我的情况下,文件名为fileåäö.pngevent.dataTransfer.files[0].name中的文件包含乱码(缺少更好的单词)字符

fileåäö.png被转换为fileåäö.png。它们看起来似乎相同,但事实并非如此。

我创建了一个假文件字符串:fileåäö.png,其长度为11。 event.dataTransfer.files[0].name的长度为14。

要测试: 在您的桌面上创建一个小的图像文件,并将其命名为fileåäö.png并将其上传到此JSBin:

https://jsbin.com/nijiqisugo/1/edit?html,js,console,output

这是怎么回事?我可以强迫event.dataTransfer.files[0].name不要乱写字符吗?

以下是该输出的图像:

enter image description here

0 个答案:

没有答案