2

执行时

lines = `gpg --list-keys --with-colons horst`

字符串将具有什么编码lines?如何更改 Ruby 解释它的方式?

背景:我在一些 gpg 键中有一些元音变音符号,在尝试按换行符拆分时出现此错误:

invalid byte sequence in UTF-8

我目前的解决方法是这样的:

lines.force_encoding('ISO-8859-1')

但是,我不明白为什么会这样ISO-8859-1,因为我的语言环境是en_US.UTF-8..

4

1 回答 1

0

我不确定您是否仍然需要对此的答案,但看起来您必须在 gpg 命令中使用 --display-charsetor–charset选项才能设置本机字符集的名称。这用于将一些字符串转换为正确的 UTF-8 编码。完成后,您不必在下游强制执行编码。

检查您服务器上的 gpg 手册页,看看您可以使用哪个选项。

于 2014-06-29T02:49:59.713 回答