gpt4 book ai didi

ruby - 相当于 Iconv.conv ("UTF-8//IGNORE",...) 在 Ruby 1.9.X 中?

转载 作者:数据小太阳 更新时间:2023-10-29 06:40:58 27 4
gpt4 key购买 nike

我正在从远程源读取数据,偶尔会得到一些采用另一种编码的字符。它们并不重要。

我想得到一个“最佳猜测”的 utf-8 字符串,并忽略无效数据。

主要目标是获得一个我可以使用的字符串,并且不会遇到以下错误:

  • Encoding::UndefinedConversionError:从 ASCII-8BIT 到 UTF-8 的“\xFF”:
  • utf-8 中的无效字节序列

最佳答案

我以为是这样:

string.encode("UTF-8", :invalid => :replace, :undef => :replace, :replace => "?")

将用“?”替换所有已知项。

要忽略所有未知数,:replace => '':

string.encode("UTF-8", :invalid => :replace, :undef => :replace, :replace => "")

编辑:

我不确定这是否可靠。我进入了偏执狂模式,并且一直在使用:

string.encode("UTF-8", ...).force_encoding('UTF-8')

脚本似乎正在运行,现在可以了。但我很确定我早些时候遇到过这个错误。

编辑2:

即便如此,我仍然会遇到间歇性错误。请注意,不是每次都这样。偶尔而已。

关于ruby - 相当于 Iconv.conv ("UTF-8//IGNORE",...) 在 Ruby 1.9.X 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7870636/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com