关于数据编码的问题(utf-8 to gbk)

简介:

mysql 的弊病就是没有办法对中文很好的支持

php+mysql的网站显示都很正常

而在数据库下看的中文都是乱码

编码方式是utf-8

而且如果是正确显示的编码gbk

 

在C#下如何将utf-8转到gbk呢?

private string utf8ToGbk(string utf8string)
        {

            byte[] buffer1 = Encoding.Default.GetBytes(utf8string);
             byte[] buffer2 = Encoding.Convert(Encoding.UTF8, Encoding.Default, buffer1, 0, buffer1.Length);
             string strBuffer = Encoding.Default.GetString(buffer2, 0, buffer2.Length);

             return strBuffer;
        }

 

还有一个函数也可以

private string utf8togbk2(string utf8string)
        {
            // Create two different encodings.
            Encoding utf8 = Encoding.UTF8;
            Encoding defaultCode = Encoding.Default;

            // Convert the string into a byte[].
            byte[] utf8Bytes = Encoding.Default.GetBytes(utf8string);

            // Perform the conversion from one encoding to the other.
            byte[] defaultBytes = Encoding.Convert(utf8, defaultCode, utf8Bytes);

            // Convert the new byte[] into a char[] and then into a string.
            // This is a slightly different approach to converting to illustrate
            // the use of GetCharCount/GetChars.
            char[] defaultChars = new char[defaultCode.GetCharCount(defaultBytes, 0, defaultBytes.Length)];
            defaultCode.GetChars(defaultBytes, 0, defaultBytes.Length, defaultChars, 0);
            string defaultString = new string(defaultChars);


            return defaultString;
        }

 

 

目录
相关文章
|
6月前
|
数据可视化 前端开发 开发工具
如何在网页中嵌入UE/Unity/WebGL程序,并与网页端通信
LarkXR实时云渲染平台,为UE数字孪生提供的产品化、平台化功能模块,以及必备的二次开发能力。
310 11
如何在网页中嵌入UE/Unity/WebGL程序,并与网页端通信
|
8月前
|
监控 Java 测试技术
2025年Postman的五大替代工具
Postman虽是广受青睐的API测试工具,但仍存在协作功能有限、执行限制及语言支持单一等问题。为此,本文推荐10款强大替代工具,如Apipost、Rapid、Insomnia、Swagger UI和SoapUI等。这些工具各具特色,涵盖轻量级调试、跨平台兼容、自动化测试及负载测试等功能,满足不同用户需求。选择适合的工具,可显著提升API开发与测试效率。
|
存储 缓存 Java
Apollo Config的简单介绍
Apollo Config是携程开源的分布式配置中心,在大规模、高并发、多环境下管理和推送配置非常方便。本文将从基本概念、应用场景、使用方式等方面介绍Apollo Config。
470 0
|
弹性计算
阿里云账号注册流程图文详解、账户实名认证和申请免费服务器全流程
阿里云账号注册支持手机号、支付宝等验证方式。使用手机号需手动验证,而支付宝等可自动完成实名认证。注册后须进行个人或企业实名认证才能正常使用服务。个人认证推荐使用支付宝快速完成;企业认证也支持支付宝法人扫描完成。完成认证后,可在免费中心申请最长达3个月的免费服务器试用,或选择付费方案获得更多资源。
|
Java C#
C# String与StringBuilder的区别和使用方法
C# String与StringBuilder的区别和使用方法
|
Java
leetcode 516. 最长回文子序列(JAVA)题解
leetcode 516. 最长回文子序列(JAVA)题解
145 0
|
传感器 JSON 前端开发
阿里云物联网平台 Alink 协议简介 | 学习笔记
快速学习 阿里云物联网平台 Alink 协议简介
3442 0
阿里云物联网平台 Alink 协议简介 | 学习笔记
ModelScope官方镜像,CPU环境镜像(python3.8)pull不存在
在pullModelScope官方镜像时,一直pull失败,发现官方镜像应该没有推送,Python3.7的是有的
|
JavaScript 前端开发 小程序
微服务项目打包部署,一套带走 上
微服务项目打包部署,一套带走 上
openstack虚拟机占用CPU高定位排查
openstack虚拟机占用CPU高定位排查
395 0