struct发送与显示中文
中文的编码显示常常是一个让人头痛的问题,网络传输的时候中文也会变成二进制的流,接收方显示就成了一个大问题。
今天使用python的struct模块来对数据封包解包,同样有这个问题。解决方法是:一般会把python代码文件声明为utf-8编码,这样可以直接在里面写中文。正常封包,接收的数据使用utf-8解包,要打印出中文字符,可以使用unicode操作。举例如下
1 # -*- coding: utf-8 -*- 2 import struct 3 s = '哈哈' 4 print s, len(s) 5 sp = struct.pack('=6s', s) 6 print sp 7 dp = struct.unpack('=6s', sp) 8 print dp, dp[0], type(dp[0]), len(dp[0]), str(dp[0]), len(str(dp[0])) 9 print unicode(dp[0], 'utf-8')
相应的输出如下
转载于:https://www.cnblogs.com/njucslzh/archive/2012/09/06/2674182.html
struct发送与显示中文相关推荐
- linux安装Wine版微信(正常显示中文,可以发送文件)
在linux安装微信首推electronic-wechat版微信,该版微信是基于微信网页版做的.安装简单,功能也齐全. 但有些微信账号被安全保护了,登录不了微信网页版,所以用不了electronic- ...
- php发送邮件,标题是乱码,php的mail函数发送UTF-8编码中文邮件时标题乱码怎么办?...
php的mail函数发送UTF-8编码中文邮件时标题乱码的解决办法:1.将subject里头的文字符合RFC 2047的规范:2.在headers中添加[content-type]:3.对用来发送邮件 ...
- create显示中文乱码 qt_Ubuntu下Qt串口助手接收中文乱码问题
问题描述: 在ubuntu中用Qt开发的串口助手,在接收单片机(STM32 F103)发来的中文时,出现乱码情况. 接收中文乱码 问题已解决,感谢Qt交流qq群中的各位大佬. 解决思路: 可以检查一下 ...
- Unity面板显示中文属性
虽然对于程序来说,一般习惯用英文命名,但有时身在公司,总是需要和策划协作的,他们可能看不懂一些英文变量,所以为了方便交流,我抽空研究了下Unity属性面板中文化的问题. 有两种方法可以实现中文属性名: ...
- ESP32 IDF LVGL8.0 flash 外部字库显示 中文显示
我从stm32一路学到esp32,发现这款芯片挺好玩的,主要是还是stm32太贵了,stm32主要是很多坑有人遇到了,并给出了解决方法,esp32这方面就少点,有时候找不到的,只能靠自己了. 本文使用 ...
- littlevgl 6.0 外部spiflash 显示中文
I.简介 littlevgl 6.0 显示中文,从查找的资料来看,一种利用内部flash,通过官方工具或网友制作的工具,生成.C文件放到内部编译,在声明下,就可以显示中文.这种方法只是用少量字体,毕竟 ...
- window系统mysql无法输入和无法显示中文的处理配置
第一步:使用记事本打开mysql安装目录下的"my.ini"文件. # MySQL client library initialization. [client] port=330 ...
- python图像中如何显示中文
python图像中如何显示中文 在开头加入这两行即可 from pylab import * mpl.rcParams['font.sans-serif'] = ['SimHei']
- hbase shell编码显示中文
最近测试hbase shell,碰到个中文显示编码问题,最后通过Python解决了问题,具体操作如下: hbase(main):015:0* scan 'fr_test_hbase:test_log1 ...
最新文章
- java xml 查询_Java DOM解析器 - 查询XML文档
- CSS选择器详细介绍
- QT的QSoundEffect类的使用
- 思维+multiset ZOJ Monthly, July 2015 - H Twelves Monkeys
- 数据库技术基础:查询优化相关知识笔记
- formSelects-v4.js 基于Layui的多选解决方案
- 光敏电阻控制led亮度程序_单片机开发系统学习LED亮度控制原理
- 鼓励生娃!携程创始人梁建章:生1个孩子应重奖100万
- slowfast 跑多卡的时候遇到问题
- python开发网络程序教程_python3编写C/S网络程序实例教程
- 中国数控机床行业市场竞争态势及投资战略规划报告2022-2028年版
- 微信撤回软件安卓版_微信强制撤回软件下载-微信强制撤回消息工具(不限时间) v1.0安卓版_5577安卓网...
- 输入一个三位数,分别输出他的个位十位百位
- mysql can t drop_异常之 mysql Can't drop database 'drop_database'; database doesn't exist
- 钉钉 服务器 消息推送,【20210727 更新】 全能推送PushBot(原钉钉推送)支持企业微信,PushPlus,Bark...
- git提示subject >50 characters; use shorter first paragraph
- C#和Java练习题--坐标求夹角
- 分子反应动力学有哪些最新发表的毕业论文呢?
- 苹果发布2019款iPad mini/Air:配A12芯片支持手写笔
- 旅游网站大数据分析 - 数据存储
热门文章
- 我是“真正的”软件工程师吗?
- varnish 实现 CDN 缓存系统构建
- 数据通信技术(九:OSPF特殊区域配置(Cisco))
- mysql查询解析过程_MySQL查询执行过程详解
- 1055 The World‘s Richest
- (C++)1028 人口普查
- (C++)设计一个程序能计算一个日期加上若干天后是什么日期and计算日期差值
- django框架的基础知识点《贰》
- Sqli-labs less 9
- php学习,一个简单的Calendar(2) 一个简单的活动页面