Рубиновая кодировка - заменить неверную кодировку? - PullRequest
0 голосов
/ 18 декабря 2018

Мне кажется, этот фрагмент кода заменяет недопустимые символы UTF-8 пустыми строками:

title = title.encode('UTF-8', 'binary', invalid: :replace, undef: :replace, replace: '')

Для чего нужен второй аргумент 'binary'?Это необходимо?

1 Ответ

0 голосов
/ 18 декабря 2018

В соответствии с документацией Ruby для encode 2-й аргумент - это кодировка исходной строки.

Это может быть необязательным полем, поскольку существует 3 формы этого метода:

encode(encoding [, options] ) → str
encode(dst_encoding, src_encoding [, options] ) → str
encode([options]) → str

Может понадобиться, в зависимости от того, как выглядит исходная строка:

https://stackoverflow.com/a/10466273/2892779

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...