1
總的Ruby noob,只是試圖破解一個腳本,使其工作。使用Iconv從UTF-8轉換爲latin1的錯誤
irb(main):011:0> Iconv.iconv("LATIN1//IGNORE", "UTF-8", "Résumé")
Iconv::InvalidCharacter: "\351"
from (irb):11:in `iconv'
from (irb):11
from :0
irb(main):012:0> Iconv.iconv("LATIN1//TRANSLIT//IGNORE", "UTF-8", "Résumé")
Iconv::IllegalSequence: "\351sum\351"
from (irb):12:in `iconv'
from (irb):12
from :0
irb(main):002:0> "Résumé".encoding
NoMethodError: undefined method `encoding' for "R\351sum\351":String
from (irb):2
感謝您的幫助。這是我得到的:irb(main):002:0>「Résumé」.encoding NoMethodError:未定義的方法編碼爲「R \ 351sum \ 351」:字符串 from(irb):2 –
看起來像你'然後重新使用Ruby 1.8.x。它主要對字符編碼無知,因此它將受制於您使用的任何終端或命令提示符。你可以通過使用''Résumé'.unpack(「C *」)'來檢查字符串中的內容,檢查原始字節,你應該看到'[82,195,169,115,117,109,195,169] '如果你處於UTF-8模式,或者'[82,233,115,117,109,233]'在LATIN1中。 – tadman