Python基础教程:Flask上传文件(包含中文)保存后乱码问题解决-阿里云开发者社区

开发者社区> 千锋Python讲堂> 正文

Python基础教程:Flask上传文件(包含中文)保存后乱码问题解决

简介: Python基础教程:Flask上传文件(包含中文)保存后乱码问题解决
+关注继续查看

Python基础教程讲解:

Flask是支持文件上传的, 近来做了一个上传SQL文件的功能, SQL中会使用到中文, 泰文, 马来西亚文等多种语言, 我们通过Flask接收到文件, 先把文件保存在后端, 保存后却发现是乱码.

通过上面一段代码接收并保存中文文件会乱码的.

如何解决呢?

首先考虑乱码是如何产生的呢, 两种不同的编码方式导致的.
通过Python的chardet模块的detect方法可以获取到字符串的编码方式

项目中获取的编码方式是GB2312编码
解决编码错乱的问题就是先正确解码, 再重新编码, 本项目中是先用GB2312解码, 然后用UTF-8编码. 如下:

上面重新编码后的sql_content的再重新写入文件对象, 然后保存就解决了中文乱码的问题.

Python基础教程:Flask上传文件(包含中文)保存后乱码问题解决
后台之间保存文件的乱码问题解决后, 我们通过MINIO的SDK上传的乱码问题也迎刃而解.
代码全览:

更多的Python基础教程也会继续为大家更新!或者伙伴们有哪些内容需要学习的也可以留言!

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Jenkins 教程(二)实现本地资源ssh上传
在教程一中我们只实现了在jenkins容器中的打包和结果通知,这节教程将用一个ssh工具将我们package完的项目上传到我们的服务器中。 1. 安装插件 Publish over SSH 完了点击直接安装 2. 插件的系统配置 配置完成后测试一下: 3. 插件的工程配置 最后一个框是在服务器运行什么脚本。
866 0
VS2010无法保存项目文件(.csprj)的问题解决方法
VS2010无法保存项目文件(.csprj)的问题解决方法   【出错提示】保存项目文件“XXX”时出错。类没有注册。正在查找具有CLSID的对象:{D9B3211D-E57F-4426-AAEF-30A806ADD397}。
942 0
Python中的乱码
我把写好的Python脚本导入到ArcGIS中的ToolBox中,在本机测试是没有问题的。为了把工具分享给其他人,即在其他电脑上使用,我必须将脚本文件(*.py)导入到工具箱文件(*.tbx)。
626 0
SSH 文件上传错误:encountered 1 errors during the transfer终极解决方法:
以下方法简单排序,从简单到复杂: 法一:在SSH Secure File Transfer(上传文件那个),打开“Operation”菜单,打开“File Transfer Mode”子菜单,再选择“Binary”,OK! 法二:把服务器上同名文件删掉再传 法三:如果文件在桌面上,将要上传的文件复制到其它分区,再上传! 法四:到 http://winscp.
819 0
《Adobe Flash CS5中文版经典教程》——导读
Adobe Flash Professional CS5为创建数字动画和交互式Web站点提供了功能全面的创作和编辑环境。Flash广泛用于创建吸引人的应用程序,它们包含丰富的视频、声音、图形和动画。
1655 0
Linux查找文件夹下包含某字符的所有文件
Linux查找文件夹下包含某字符的所有文件Linux grep 命令用于查找文件里符合条件的字符串。grep 指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设 grep 指令会把含有范本样式的那一列显示出来。
1716 0
+关注
千锋Python讲堂
Python忠实粉!从业Python已有6年!希望在这里跟大家一起分享我的经验和同伴交流!
59
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载