我需要将源文件从旧的 CAN-8 系统转换为/自标准 ASCII。
CAN-8 文件的每个字节都有高位 (0x80)。
所以我需要做类似的事情:
f=File.new
can8=f.read
...用变量can8
做点什么
当我显示 can8
变量时,它看起来像 "\xC1\xC2\xC3"
,我需要将其转换为 "ABC"
("\x41\x42\x43"
)
迈克
最佳答案
这是一种方法:
original_string = "\xC1\xC2\xC3"
converted_string = original_string.bytes.collect { |b| (b & 0x7f).chr }.join
您没有指定 Ruby 版本,所以我假设您使用的是 1.9 或更高版本。
关于ruby - 如何使用 Ruby 替换文本文件中每个字符的高位?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8440967/