首页 > 解决方案 > 如何使用 R 将十六进制数据转换为实数

问题描述

我很期待将一些数据转换为实数的方式

以下是数据示例

0400 0000 cf40 2761 d2ff 5552 ceff 5652
e0ff 5b52 e0ff 5b52 eaff 5f52 f4ff 5b52
eaff 5852 eeff 5752 f2ff 5952 eeff 5a52
d8ff 5452 d4ff 5652 caff 5452 ccff 5352
d2ff 5552 c2ff 5a52 ccff 5e52 e2ff 5652
eaff 5852 f0ff 5652 e8ff 5452 e8ff 5452
eaff 5552 deff 5a52 f0ff 5f52 faff 5b52
0a00 6152 0400 6352 f8ff 5f52 0000 5c52
f8ff 5952 0200 5452 0000 5452 f2ff 5952
f8ff 5a52 0400 5652 0400 5652 f2ff 5c52

经过一番调查,我发现似乎十六进制数据文件(或原始二进制格式)我尝试了很多方法,如十六进制编辑器和 R 和 python 的其他功能,但它对我不起作用

如果您对这些数据有任何想法,请告诉我!十分感谢!

标签: pythonrhex

解决方案


您可以使用简单的 python 函数。我已将 Hexa 存储在一个变量中。然后您可以使用 split 函数将列表中的十六进制转换如下。要以数字形式传输 Hexa 列表,请使用带有 for 循环的打印函数。

1. For i.e. hex_string = "your hexa data" 
2. For i.e. ist = (hex_string.split(" "))

检查下面的完整代码。

hex_string = "0400 0000 cf40 2761 d2ff 5552 ceff 5652 e0ff 5b52 e0ff 5b52 
eaff 5f52 f4ff 5b52 eaff 5852 eeff 5752 f2ff 5952 eeff 5a52 d8ff 5452 
d4ff 5652 caff 5452 ccff 5352 d2ff 5552 c2ff 5a52 ccff 5e52 e2ff 5652 
eaff 5852 f0ff 5652 e8ff 5452 e8ff 5452 eaff 5552 deff 5a52 f0ff 5f52 
faff 5b52 0a00 6152 0400 6352 f8ff 5f52 0000 5c52 f8ff 5952 0200 5452 
0000 5452 f2ff 5952 f8ff 5a52 0400 5652 0400 5652 f2ff 5c52"

list = (hex_string.split(" "))
for i in list:
     print(int(i,16))

推荐阅读