当前位置: 首页 > 知识库问答 >
问题:

将Python的binascii.crc_hqx()转换回ascii

俞俊逸
2023-03-14

我使用的是标准的Python3 libbinascii,特别是crc_hqx()函数

binascii.crc_hqx(数据,值)

import binascii
t = 'abcd'
z = binascii.crc_hqx(t.encode('ascii'), 0)
print(t,z)
abcd 43062

我尝试了a2b_hqx()函数的变体

binascii.a2b_hqx(字符串)

将binhex4格式化的ASCII数据转换为二进制数据,而不执行RLE解压缩。字符串应该包含完整数量的二进制字节,或者(如果是binhex4数据的最后一部分)剩余位为零。

y = binascii.a2b_hqx(str(z))
import binascii
t = 'abcd'
z = binascii.crc_hqx(t.encode('ascii'), 0)
print(t,z)
y = binascii.a2b_hqx(str(z))
abcd 43062
Traceback (most recent call last):
  File "test.py", line 5, in <module>
    y = binascii.a2b_hqx(str(z))
binascii.Incomplete: String has incomplete number of bytes
y = binascii.a2b_hqx(bytearray(z))

此回溯:

binascii.Error: Illegal char

共有1个答案

斜成济
2023-03-14

生成的是校验和,不可能转换回ASCII。

 类似资料:
  • 我试图将Python程序转换为C++,因为我对Python的理解稍微好一点。然而,翻译出来的代码并不起作用。有人能帮我一下吗?我试图用C++制作一个数独板,但它在中返回一些值,而不是其他位置。加上它们是无效的,并包含0。 这个程序的输出是一个二维数组,所有值都不在0,并且对数独板有效: 是一个长度为9的二维数组,在每个位置都有9个列出的语句。在这里,它们都被初始化为。 这个程序的输出也是一个二维数

  • 问题内容: 我看过几本 教程,解释了如何将二进制图像转换为encode64表示形式: 我的问题是,如何将该字符串表示形式返回到缓冲区的二进制数据。 问题答案: 这个问题有一些有用的信息:如何在node.js中进行Base64编码? Buffer类本身进行转换:

  • 我很难弄清楚这些的语法。我很想能够将我的groovy gradle文件转换为kotlin,但它有400行,目前还不可行。 我想知道如何用groovy编写这个kotlin代码:

  • 问题内容: 我将键值对放入Java中,并使用方法将其转换为。 是否可以将这种表示形式转换回对象并使用其对应的键检索值? 谢谢 问题答案: 这种方法依赖于的实现,并且在大多数情况下可能是有损的。 这里不可能有无损解决方案。但更好的方法是使用对象序列化 将对象序列化为字符串 将字符串反序列化为对象 在此,如果用户对象具有临时字段,则它们将在过程中丢失。 旧答案 一旦使用toString()将HashM

  • 问题内容: 我使用以下代码将密钥转换为字节 现在如何从中获取密钥?我试过了: 我收到以下错误: 问题答案: 这应该工作

  • 问题内容: 我正在编写一个将数据存储在字典对象中的程序,但是该数据需要在程序执行过程中的某个时候保存,并在再次运行该程序时重新加载到字典对象中。我如何将字典对象转换为可以写入文件并再加载回字典对象的字符串?希望这将支持包含词典的词典。 问题答案: json模块是一个很好的解决方案。与pickle相比,它的优势在于它仅生成纯文本输出,并且是跨平台和跨版本的。