2019-8-31-C#-大端小端转换
2023-09-27 14:28:53 时间
title | author | date | CreateTime | categories |
---|---|---|---|---|
C# 大端小端转换 |
lindexi |
2019-08-31 16:55:58 +0800 |
2018-05-28 10:21:59 +0800 |
C# |
关于大端和小端,是一个有趣的问题。本文告诉大家如何在C#转换大端和小端。
这里有一个有趣的故事,请看详解大端模式和小端模式 - CSDN博客
默认的 C# 使用的是小端,如果收到的消息是大端,那么就会出现解析错误。
例如收到的数据是 byte 数组,现在知道数据是大端数据,需要把大端转小端,首先需要把数据复制出来。
复制数组
假设收到的数据是 data ,里面的前两个 byte 是不需要的,格式是
也就是需要复制出第2个到第5个byte出来,转换这个数据反序。
复制数组的方式有很多个,例如 Array.Copy 和 Buffer.BlockCopy 两个函数使用方式差不多
下面我使用 Array.Copy 做例子
首先定义一个数组用来反序
var revertByteList = new byte[4];
然后复制数据
Array.Copy(data, 2, revertByteList, 0, 4);
对数据反序,这样就转换大端
revertByteList = revertByteList.Reverse().ToArray();
数组转整数
从数组转整数的方式很简单,使用下面代码就可以转换
var n = BitConverter.ToInt32(revertByteList, 0);
小端转大端就是先把 int 转 byte ,然后按照每 4 个 byte 反序就可以
相关文章
- C#-常用
- asp.net RSA密钥之C#格式与Java格式转换(PEM格式)
- C# 输入法
- C#字符串、字节数组和内存流间的相互转换
- C#中使用Buffer.BlockCopy()方法将string转换为byte array的方法:
- C#中将一个引用赋值null的作用
- .net 反射访问私有变量和私有方法 如何创建C# Closure ? C# 批量生成随机密码,必须包含数字和字母,并用加密算法加密 C#中的foreach和yield 数组为什么可以使用linq查询 C#中的 具名参数 和 可选参数 显示实现接口 异步CTP(Async CTP)为什么那样工作? C#多线程基础,适合新手了解 C#加快Bitmap的访问速度 C#实现对图片文件的压
- Word控件Spire.Doc 转换教程(二十七):如何在 C# 中将 Word 转换为 PostScript
- Word控件Spire.Doc 转换教程(二十五):在 C#、VB.NET 中将 ODT 转换为 DOC
- Word控件Spire.Doc 转换教程(二十四):在C#中将Word 转换为SVG
- Word控件Spire.Doc 转换教程(十四):使如何在 C#、VB.NET 中将 HTML 转换为 XML
- Word控件Spire.Doc 转换教程(三十):C#、VB.NET 在 Azure 应用程序中将 Word 转换为 PDF
- Word控件Spire.Doc 转换教程(二十七):如何在 C# 中将 Word 转换为 PostScript
- Word控件Spire.Doc 转换教程(五):在 C#、VB.NET 中将 Word与HTML互相转换
- Word处理控件Aspose.Words功能演示:使用 C# VB.NET 将 DOCX 转换为 DOC 或将 DOC 转换为 DOCX
- Word处理控件Aspose.Words功能演示:如何在 C# .NET 中将 PNG、JPG 转换为 Word
- C#【高级篇】 IntPtr是什么?怎么用?
- C#【文件操作篇】保存内容到txt文件
- C#,图像二值化(03)——全局阈值的基本算法(Basic Thresholding)及其源程序
- C# Enum,Int,String的互相转换
- C#中JSON和对象之间互相转换功能示例
- 在C#中使用Irony实现SQL语句的解析
- RGB,CMYK,HSB各种颜色表示的转换 C#语言
- c#基础-的显性转换,和隐形转换
- C#函数之实现Lagrange插值算法
- 《C#零基础入门之百识百例》(四十六)类的索引 -- 数组索引器
- C# 面向对象汇总
- 前缀,中缀,后缀表达式简介及转换 -- C# 简化小例
- C# 把字符串类型日期转换为日期类型(转载)
- C# (类型、对象、线程栈和托管堆)在运行时的相互关系
- C#-中的字符串及其编码转换
- C# 运算符 ?、??、?: 、?. 、 各种问号的用法和说明
- C#-根据控件名获取控件对象
- C# Color值转换为unit