问题标签 [unpack]
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.
perl - Perl 和解析杂乱的文本
我有以下文字
我有这个代码/子,它获取每一行并假设产生一个相关列表:
我不知道如何从 $rest 中获取数据,我尝试了许多 unpack 的变体,但无济于事,我需要将其存储到一个列表中。忽略'upk_short',它不正确,虽然我尝试了很多其他的,但看起来线条太动态了。
更新:如果有人能找到一种方法来规范化文本会很好,我的意思是对齐所有内容,以便我可以使用 Tom 的方式来解析它。
任何想法?
perl - 使用 Perls unpack() 验证加盐哈希
我正在尝试使用 Perl 验证加盐密码,但我被 unpack 卡住了。
我有一个加盐哈希密码,例如 SHA256:SSHA256 = SHA256('password' + 'salt') + 'salt' Base64 编码得到' {SSHA256}eje4XIkY6sGakInA+loqtNzj+QUo3N7sEIsj3fNge5lzYWx0'。
我将此字符串存储在我的用户数据库中。当用户登录时,需要将盐与哈希分开,以使用盐对提供的密码进行哈希处理,并将结果与从数据库中检索到的结果进行比较。这就是我卡住的地方。我似乎没有正确的解包模板将哈希(8 位二进制,固定长度,在本例中为 32 字节)与盐(8 位二进制,可变长度)分开。
我尝试过类似
my ($hash, $salt) = unpack('N32 N*', $data);
的方法,但似乎没有成功。
我的问题是:我怎样才能解压这个哈希(在它被 Base64 解码之后)以获得一个固定长度的哈希和另一个变量中的可变长度盐?
archive - 通用归档解包器库
许多防病毒软件可以解压缩用户硬盘上的大多数档案。他们剖析了.zip
, .rar
, .chm
, .exe
, .msi
(和其他安装程序)等等。他们也可以解压可执行文件(从他们那里获取资源,解压打包的可执行文件和解压 SFX 档案)。
例如,流行的旧俄罗斯杀毒软件“Drweb”支持多种存档格式:
Dr.Web 知道许多类型的档案。目前它们是:ZIP、7ZIP、ARJ、RAR、LHA、HA、GZIP、TAR、BZIP2、MS CAB、WISE、MSI、ISO、CPIO、RPM、DEB
是否有允许我解压大多数档案的库或实用程序?
是否有像防病毒软件那样解压缩可执行文件的库?
perl - 打包/解包 - 小端 - 64位 - 问题
我如何从打包/解包中获取
这样的输出?
ruby - 红宝石中的128位长双打?
在我的 ruby 代码中,我正在与一个服务器对话,该服务器以二进制格式的字符串形式响应 128 位长双精度(“128 位长双精度”、“binary128”或“四倍精度浮点”)。
有没有办法解压缩这些字符串以在 ruby 中使用?根据String.unpack上的文档,最大精度似乎是两倍。是否有可能在 ruby 中表示这些 128 位浮点数?
c - 从 Ruby 确定 sizeof( double ) 和 sizeof( int ) 的最简单方法是什么?
为了使用 Ruby 的String.unpack 解压缩具有混合双精度和整数的复杂二进制字符串,我需要确定二进制字符串中的偏移量。通常,双精度数是 8 个字节,整数是 4 个字节,但为了使我的代码与机器无关,我想从我的 Ruby 代码中查询这些大小。
从 Ruby 中确定整数和双精度的大小的最简单方法是什么,即请求对 Csizeof( type )
方法的请求响应?
perl - 如何以十六进制格式从 unpack 中获取校验和?
我一直试图弄清楚 Perl 中的unpack函数,但不能完全弄清楚整个事情。
我有:一个字符串和一个 16 位十六进制校验和(例如"this is my string"
,"0671"
)
我需要检查是否"this is my string"
等于校验和'0671'
。
所以我知道unpack("%16W*", $string)
会给我 16 位十进制值,但我需要十六进制表示。我知道这很容易,所以请原谅我的无知。
php - php如何解压十六进制数据
我有这个:
我尝试使用 unpack(),但没有成功
ruby-on-rails - 删除了未打包的 gems 文件夹,现在出现错误
我解压缩了 gem,然后用“rm”手动删除了它们。现在我无法让它使用系统宝石,而且我所做的一切都会出错。
我解压了 shoulda 并冻结了 rails,后来认为没有必要并删除了 shoulda 文件夹和所有 action_/active_ 文件夹(我重置为 HEAD 并放弃了更改)。我想不出哪里会有仍然反映解包/冻结的变化......
现在,当我尝试运行 rake 时,我得到:
有没有办法让它重新使用系统宝石?我不明白为什么如果供应商/插件/中的宝石不存在,它不只是按优先顺序加载系统宝石。
任何见解都会很棒。
java - 用 Java 读取二进制文件
我有一个 java 程序,它在 MySQL“BINARY (128)”字段中存储一个 128 字节长度的字节数组。
然后,我使用 PHP 访问数据库并选择将这些数据导出到文件中,因此我 unpack() 二进制数据,并将其写入文件中。
然后,必须在我正在编写的 Java 程序中读取这个文件,但我找不到如何读取这些数据。有什么建议吗?
我试过:
但是 bis.read() 返回一个 int,而我发送到 mysql db 的字节数组是一个字符串:"text".getBytes("utf-8");
谢谢,