问题标签 [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.
.net - Objective-C:如何从 .NET 的 BitConverter 类中读取数据
在 .NET Web 应用程序中,BitConverter 类用于将 Int32 转换为字节数组,如下所示:
现在我正试图将它读回到 iPhone 应用程序中。我在 NSData 中有长度为 4 的字节,但我不确定如何继续,因为我不知道如何在调试器控制台中查看 nsdata 的内容。
如何将这 4 个字节转换为 Objective-C int?
编辑:
这是我想出的东西,它可能在正确的轨道上,也可能不在正确的轨道上。我不确定如何通过 NSData 中的索引获取单个字节值。
c# - 在 C# 中将指针转换为循环选项
我如何将其转换为循环而不使用指针。
我正在尝试使用此页面中的代码:查询字符串参数混淆
c# - 将 Int32 转换为 24 位有符号整数
我需要将 Int32 值转换为 3 字节(24 位)整数。字节序保持不变(很少),但我不知道如何适当地移动标志。这些值已经被限制在适当的范围内,我只是不知道如何将 4 字节转换为 3。使用 C# 4.0。这是为了硬件集成,所以我必须有 24 位的值,不能使用 32 位。
c# - 使用 BitConverter 在 C# 中快速转换,它可以更快吗?
在我们的应用程序中,我们有一个非常大的字节数组,我们必须将这些字节转换为不同的类型。目前,我们BitConverter.ToXXXX()
用于此目的。我们的重击手是,ToInt16
和ToUInt64
。
对于UInt64
,我们的问题是数据流实际上有 6 个字节的数据来表示一个大整数。由于没有将 6 字节数据转换为 的本机函数UInt64
,我们这样做:
我们的使用ToInt16
更简单,不用做任何位操作。
我们做了很多这两个操作,所以我想问 SO 社区是否有更快的方法来进行这些转换。目前,这两个函数消耗了我们整个 CPU 周期的大约 20%。
c# - 将原始字节数据转换为 float[]
我有此代码用于将 a 转换byte[]
为float[]
.
问题是,我通常会得到一个NaN
结果!为什么会这样?我检查了是否有数据,byte[]
数据似乎很好。如果有帮助,这些值的示例是:
但这NaN
在转换为浮点数后返回 (Not a Number)。可能是什么问题呢?还有其他更好的转换byte[]
方式float[]
吗?我确信读入缓冲区的值是正确的,因为我将它与我的其他程序(对 .wav 文件执行放大)进行了比较。
c# - BitConvert.IsLittleEndianon 在不同的字节序架构上
BitConverter.IsLittleEndian 的文档说:
指示数据在此计算机体系结构中存储的字节顺序(“字节序”)。
“这个”让我很困惑。假设我有以下代码:
现在说我去我的小端机器上编译我的程序。如果我将可执行文件复制粘贴到大端机器上,它会说假吗?还是真的?基本上我想知道该字段是否是动态的,以及 JIT 是否与它有关。
c# - 十六进制的 BitConverter VS ToString
只是想知道是否有人可以解释为什么以下两行代码返回“不同”的结果?是什么导致了相反的价值观?这与字节顺序有关吗?
vb.net - c ++将字符串转换为字节以通过tcp发送
我正在尝试将 28 个字符的字符串发送到远程 IP 地址和端口。我已经使用以下代码片段在 vb.net 中成功完成了此操作:
我现在必须将其转换为 c++ 并且到目前为止具有以下内容:
但我被困在这一点上。我确定我错过了一个简单的语法错误,但我无法弄清楚!
澄清一下,我没有收到错误,但我认为字符串没有正确转换为字节,因为当我转换回来时,我只是得到一个 '01'
干杯,克里斯
c# - BitConverter 类中 IsLittleEndian 的用例是什么?
当我IsLittleEndian
在BitConverter
. 我当然认为它应该在那里,我应该能够指定我喜欢的任何字节序。好吧,我的幸福并没有持续多久。花了一些时间才发现没有办法设置字段。该字段为readonly
,并且仅true
在静态构造函数中设置为:
有趣的是,该字段实际上是在代码中使用的。例如ToInt32
方法实现如下所示:
所以似乎ToInt32
完全有能力处理小端和大端。
我的问题是:为什么有一段非常有用的代码已经实现并放在 FCL 中,但是没有办法使用它(当然,除非你开始弄乱反射)?仅仅是因为一些开发人员没有按时完成任务而半途而废吗?即使是这样,为什么代码不可用,但字段可用?我希望有一个很好的理由。
我想让自己清楚。我不需要关于如何处理大端值的解决方案。我确实有解决办法。解决方案实际上显示在我的问题中。
c# - C# - 读取双精度值
假设只有一个双精度值以二进制格式写入文件。如何使用 C# 或 Java 读取该值?
如果我必须从一个巨大的二进制文件中找到一个双精度值,我应该使用什么技术来找到它?