C# Unicode编码区分大小端,且Encoding.Unicode采用了小端模式

ASCII由于只有一个字节,因此没有大小端的问题

UTF-8因为其本身附带了字节结构信息,因此也没有大小端问题

Unicode因为至少2个字节,且一个符号强制规定对应一个数值,因此有大小端的问题

C#本地是小端模式,Encoding.Unicode默认也采用了小端模式,不过官方给了一个Encoding.BigEndianUnicode,这个是大端模式

            string str = "abc123测试啊";
            byte[] bs1 = Encoding.Unicode.GetBytes(str); //这个是小端模式
            Console.WriteLine("小端:" + bs1.ToHexString());
            byte[] bs2 = Encoding.BigEndianUnicode.GetBytes(str); //官方给了个大端的
            Console.WriteLine("大端:" + bs2.ToHexString());

 

posted @   WmW  阅读(217)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示