编辑:如果您知道正确的术语而不是“乱码”,请随时进行更改。
Edit2 :当我从WINDOWS计算机上载时,它可以正常工作。但是,当我从Mac上传时,它会出现“乱码”。当文件存储在Mac上时,似乎字符已经错误了。
上传带有utf8字符的文件时,在我的情况下,文件名为fileåäö.png
,event.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
不要乱写字符吗?
以下是该输出的图像: