社区
C#
帖子详情
C#里怎样将Big Endian 转换为 Little Endian的字节读取顺序?
ArcJeremy
2005-04-08 01:40:34
我在读一个文件头的时候发现有些字段是Big Endian顺序的(都为int或double型)
想把它转换为Little Endian的读取顺序,不知道.net 类库里有没有相关的类方法之类的还是只能老老实实自己写一个?
...全文
916
8
打赏
收藏
C#里怎样将Big Endian 转换为 Little Endian的字节读取顺序?
我在读一个文件头的时候发现有些字段是Big Endian顺序的(都为int或double型) 想把它转换为Little Endian的读取顺序,不知道.net 类库里有没有相关的类方法之类的还是只能老老实实自己写一个?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
owe
2005-04-13
打赏
举报
回复
//读取一个Int32型
private int ReadIntByByte( BinaryReader bReader)
{
byte[] b = new byte[4];
for(int i = 3; i >= 0; i--)
{
b[i] = bReader.ReadByte();
}
return BitConverter.ToInt32(b, 0);
}
demonfox
2005-04-13
打赏
举报
回复
是吗?我没有亲自试过,你有测试文件么?发一个给我,我试试看:
yin_hu@msn.com
ArcJeremy
2005-04-13
打赏
举报
回复
TO:demonfox(坐井观天)
我在MSDN里也查到了这个方法,但是好像不行。不知道是我的系统问题还是什么不管我用Unicode文本文件还是二进制文件都还是以Little Endian的方式读。
TO:xiaohaige(无聊聊)
这个方法不错也很方便,调试也通过了。不过我还有Double类型的,MSDN里介绍好像只支持short,int,long这三个类型。
wjcking
2005-04-09
打赏
举报
回复
up
demonfox
2005-04-09
打赏
举报
回复
可以的,只要是2个bytes的倍数就可以(就是偶数个bytes,int和double都是4bytes),如果是ASCII Code(1个byte),就不行了。
xiaohaige
2005-04-08
打赏
举报
回复
用IPAddress的HostToNetworkOrder和NetworkToHostOrder
ArcJeremy
2005-04-08
打赏
举报
回复
我读的是二进制文件,里面都是int或者double类型~
这样行吗?
demonfox
2005-04-08
打赏
举报
回复
直接作为BigEndian读进来。不过下面的方法只能用于Unicode编码:
System.Text.Encoding encoding = System.Text.Encoding.BigEndianUnicode;
StreamReader reader = new StreamReader("TextFile.txt", encoding);
string line = reader.ReadLine();
while (line != null)
{
Console.WriteLine(line);
line = reader.ReadLine();
}
byte与int互转及原理解析
本文详细探讨了在处理BMP图片格式时遇到的
字节
问题,包括byte和int类型在Java和
C#
中的存储特性,以及在不同编程语言中
字节
和整数之间的
转换
,特别关注了
Li
ttle
-
endian
和
Big
-
endian
模式在数据流
读取
中的应用。
C#
与PLC通讯中的浮点数处理:ModbusTCP下的
字节
转换
实战
本文详解
C#
通过ModbusTCP与PLC通讯时32位浮点数(float)的双向处理:如何将PLC中占用两个16位寄存器的浮点数值正确解码为
C#
float,以及反向编码写入;重点涵盖IEEE 754标准、
字节
序(
Big
/
Li
ttle
Endian
及CDAB/ABCD等常见PLC变种)、NModbus库集成、通用
字节
转换
方法设计、调试验证技巧及异常处理。
进制
转换
BCD码
本文详细介绍了
字节
序的概念,包括
Big
-
Endian
和
Li
ttle
-
Endian
两种存储方式,以及它们在内存中的布局。通过举例说明了这两种
字节
序的差异,并探讨了在不同场景下的应用,如网络通信和数据存储。同时,提到了
字节
序在编程中的
转换
方法,如
C#
中的BCD码
转换
,并提供了部分代码示例。此外,还涉及到了Modbus RTU协议在电能表通信中的应用,包括地址处理和数据
读取
。
AS3与.net之间的Socket编码
转换
的
endian
问题
本文介绍在AS3与
C#
间通过Socket进行通信时遇到的
字节
序问题及解决方法。通过调整AS3中Socket对象的
endian
属性,确保了两端数据正确解析。
C#
socket传
字节
数组到flash socket接收 大小端(
字节
序)问题
本文探讨了
C#
中使用BitConverter.GetBytes方法将整数
转换
为
字节
数组,并发送给Flash时遇到的
字节
序问题。在Flash端接收并解析这些
字节
时,需正确设置
字节
序(
Big
Endian
或
Li
ttle
Endian
),才能准确还原原始整数值。
C#
111,131
社区成员
642,542
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章