问题标签 [bitconverter]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - C# - 不同类型的字节表示不同吗?
我知道问题有点奇怪,我只是出于好奇而问,因为我找不到任何相关信息。另外,请随意编辑标题,我知道它很糟糕,但无法弥补。
假设我有一个对象类型的变量 foo,它要么是短的,要么是 ushort。我需要通过网络发送,所以我使用 BitConverter 将其转换为 byte[]:
网络/套接字魔法发生了,我想要我的变量。我知道我期望得到的类型,所以我正确地调用了 BitConverter.GetUInt16 或 GetInt16。
现在,问题是 - 我如何序列化变量真的很重要吗?我的意思是,位是相同的,所以它不应该有任何意义,对吗?这样我就可以
然后做
任何人?
c - 在C中将十六进制转换为字符串?
你好我正在使用digi动态c。我正在尝试将其转换为字符串
目前,当我做printf
陈述时,它必须是这样的:
但我想要这个字符串,所以我可以使用printf
这样的语句
我本质上是通过 TCP/IP 端口发送 readingreg 数组,为此我需要将其作为字符串。我似乎无法将其转换为字符串。谢谢你的帮助。此外,如果有人可以告诉我如何一次处理每个元素而不是整个数组,那很好,因为只有 4 个元素。
c - sprintf 没有给出预期值
我有一个用十六进制数字填充的数组(readingreg [4])。我的目标是将数据类型转换为字符串。我已经阅读了一些建议,似乎 sprintf 是要走的路。
这是我尝试过的:
这是我的输出:
在这一点上,我对 sprintf 为我做了什么感到很困惑。我的预期输出是 server0 - server4 都保留了它们的字符串值。知道为什么会这样吗?
这是该程序的简化版本:
完整的程序有 1000 多行代码,所以我提供的应该足以编译和运行。
c# - 使用 C# 中的 BitConverter 类将字节数组转换为十六进制值?
我正在尝试使用Bitconverter类将 a 转换byte array
为hexadecimal
值。
现在如果我逐行执行上面的代码,这就是我看到的
我认为hexResult字符串将与hexValue相同(即 780B13436587h),但我得到的是不同的,我是否遗漏了什么,如果我错了,请纠正我。
谢谢!
c# - BitConverter.IsLittleEndian = false 时的字节顺序
我使用尽可能少的字节数以字节等效格式存储数字。在 65535 到 16777215 的范围内,BitConverter 给了我一个 4 字节的数组,但我只想存储 3 个字节。
对于下面的代码,我的数组是[0]254、[1]255、[2]255、[3]0,所以我可以去掉字节[3]。这是在Core i7 proc上。在我的生产代码中,在数组复制之前,我正在检查 BitConverter.IsLittleEndian 以确定我可以截断最后一个字节。
我的问题是 - 我是否需要关注系统的字节序,或者 CLR 是否只使用这种 LittleEndian 格式?我没有 BigEndian 系统(甚至不知道如何获得)来测试我的字节数组是否以相反的顺序出现。
c# - 8 字节数组回长(C# 到 C++)
我正在使用 C# 将 long 转换为 8 槽字节数组
Byte[] Data = BitConverter.GetBytes(data.LongLength);
例如,如果data.LongLenght
是 172085,我得到以下数组 { 53,160,2,0,0,0,0,0 } 但是在我将它发送到我的 c++ 服务器之后,我想再让它变长。
我试过这个但没有成功......
.net - 在 .NET 中将字节数组转换为人类可读的字符串,反之亦然
由于使用Convert.ToBase64String和Convert.FromBase64String可能会导致内存不足异常,当输入非常大的字符串时。
在 .NET 中是否有另一种方法可以将字节数组转换为人类可读的字符串,反之亦然?
c# - C++ equivalent of BitConverter
I'm trying to read the PE headers of a file to get some information. For .NET
and C#
, I'm using BitConverter
to convert the Byte array obtained after having read the file to an integer equivalent. I wish to do the same with C++
, but am not sure of the best approach. I'm using an unsigned
char
array
as the Byte array
equivalent.
The code is given below..
I'll be using the O/P to query the PE header for information. Need the equivalent of BitCOnverter here. and hopefully it will work.
UPDATE : Thanks for the replies. As suggested I'm trying to use the cast, to convert the character array
into Int
, to read the PE Header
, but it's giving me an access violation Unhandled exception. This is the full code, the file is valid and is being read. I tried with debug, and Optimization disabled, but to no avail.
Kindly advise.
Thanks a lot.
c# - 转换为浮点数
我有两个 ushort 整数。整数:2206,41247
我想转换为浮动这个整数。为了这;
我在 Linqpad 中编写了一些代码。此函数结果为9,547158E-34
但在Modbus Poll程序中,这个整数转换为0 。
我使用 Modbus 协议从远程设备读取这些整数。正确值为0
我的问题; Modbus Poll 程序如何将此整数转换为浮点数?价值怎么可能为零?
任何想法 ?
c# - C# 中用于将浮点数转换为十进制的溢出异常
Convert.ToDecimal(float number here)
调用时出现溢出异常。我正在读取字节字符串并希望将字节数组转换为十进制数。
即使我设置约束来检查浮点数是否太大/太小/到无穷大以进行转换,代码仍然会以捕获异常结束...