之前手写了一个文件上传的小程序,form的enctype设为:multipart/form-data,文件上传后(所选文件文件名为中文),在页面再查看,文件名就成乱码了,但是内容并没乱码
标签:
相关文章
- 敏捷开发在互联网时代里的价值
- PL2586|替代FE1.1S|替代MA8601|USB2.0HUB集线器芯片|旺玖
- 力软快速开发平台,帮助中小企业躲过数字化“踏浪出海”的“暗礁”
- 软件开发:站在风口上的低代码
- TYPEC转HDMI方案|TYPEC扩展坞方案|CS5265设计4K60HZ TYPEC转HDMI方
- DP转HDMI2.0|DP转HDMI和VGA输出|CS5262AN方案应用|瑞奇达CS5262设计电
- Capstone瑞奇达|台湾瑞奇达|一级代理商|台湾瑞奇达科技有限公司
- CH7511B替代方案|CS5211设计方案|CS5211替代CH7511B|eDP转LVDS转接板
https://blog.csdn.net/zhouyingge1104/article/details/38322403 里面有
这是因为电脑本身文件名的中文编码格式不是utf-8 但是你代码的编码格式却是utf-8 这就造成了编码格式不一致的问题 如果是英文的好像不会有这个问题(具体我忘记了)解决的方式就是代码格式的转变 好像电脑中文的文件名格式是gb2312吧 还是GBK啊 不是很记得了 你将它转为utf-8就可以了
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
这一段有没有。
首先你的上传文件是不是在本地服务器www之类的目录下, 另外header头里面显示的编码是啥 如果是小程序,看看uploadfile的参数加上header: {“chartset”:”utf-8”}这个试试
这件事和 “文件上传“ 、”form“ 、”enctype设为:multipart/form-data”
没有毛线关系。
我自己在读取传至服务端的流文件,截取其中文件名字符串时使用了 “String filename = str.substring(beginIndex,endIndex);//截取文件名” 强行读取内容并转换为string,而其他内容则是用
while((n=randomfile.readByte()) != -1&&i <= 4)
{
if(n=='\n')
{
startext = randomfile.getFilePointer();
i++;
}
}
二进制形式直接写入,所以只有名字会乱码