方法:1、利用“fileName=new String(fileName.getBytes("UTF-8"),"GBK")”语句;2、利用“fileName=URLDecoder.decode(fileName,"UTF-8")”语句。

本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑
SWFUpload中文乱码问题,在网上搜的帖子,关于这个问题的解决方法有很多。
第一种:fileName= new String(fileName.getBytes("UTF-8"),"GBK");
用这种方式能解决大部分乱码,但如果文件名中有特殊字符和标点符号有时候会转不过来。
第二种:我使用的是这种办法,测试已经通过
/**在设置时需要设置一下上传事件
*upload_start_handler : UploadStart,
*动态传参数,解决文件名中文乱码问题
**/
function uploadStart(file) {
try {
/* I don't want to do any file validation or anything, I'll just update the UI and return true to indicate that the upload should start */
var progress = new FileProgress(file, this.customSettings.progressTarget);
//progress.setStatus("Uploading...");
progress.setStatus("上传中...");
progress.toggleCancel(true, this);
this.setPostParams({
'fileName':encodeURIComponent(file.name)
});
}
catch (ex) {
}
return true;
}在action中使用
立即学习“PHP免费学习笔记(深入)”;
fileName = URLDecoder.decode(fileName,"UTF-8");
推荐学习:《PHP视频教程》
以上就是php swfupload中文乱码怎么解决的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号