vainquit 2020-06-01 18:19 采纳率: 100%
浏览 165
已结题

中文在sql server正常显示,用python3.8读取后也正常显示,但再从python传到android studio后就出现部分乱码

在sql server显示的值如下:

图片说明

然后在python3.8(已在文件开头声明使用utf-8编码)的pymssql读取后,print读取内容也显示正常的中文。然后把结果使用utf-8编码的方式进行json.dump,得到一个json字符串,再将其转化为二进制流传输到android studio客户端。android studio客户端接受到二进制流后,用utf-8编码转化为字符串,却得到如下结果:

图片说明

我就想不通了,我全程都用utf-8编码,这乱码是怎么来的?我怀疑在sql server储存的这中文是GBK编码,由此导致了问题。但不知道整个事情的来龙去脉是怎样的,能否有人给我解惑并告知解决方案?

  • 写回答

3条回答 默认 最新

  • threenewbee 2020-06-01 18:43
    关注

    目测你的字符串的前面多出来的不只是'广'一个字
    这说明你的json序列化,二进制,网络传输这3个环节必然有一个地方出错,导致分界符错乱,或者数据包混入了别的内容。
    比如说作为字符串长度的某个整数。
    具体你要检查下了

    评论

报告相同问题?

悬赏问题

  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?
  • ¥15 乘性高斯噪声在深度学习网络中的应用
  • ¥15 运筹学排序问题中的在线排序
  • ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决
  • ¥30 求一段fortran代码用IVF编译运行的结果
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛