我认为这件代码替换为空白字符串的无效UTF-8字符:
title = title.encode('UTF-8', 'binary', invalid: :replace, undef: :replace, replace: '')
第二个参数'binary'
是什么?是否有必要?
根据编码的Ruby文档,第二个参数是源字符串的编码。
这可能是一个可选字段,因为此方法有3种形式:
encode(encoding [, options] ) → str
encode(dst_encoding, src_encoding [, options] ) → str
encode([options]) → str
您可能需要它,具体取决于源字符串的外观:
https://stackoverflow.com/a/10466273/2892779