我有一个包含两种不同编码的大文件。 “main”文件是UTF-8,但某些字符如is32xx(isoxxx中的)或<9F>
(isoxxx中的)使用ISO-8859-1编码。我可以用这个来代替无效字符:使用两个单独的编码在Ruby上加载文件
string.encode("iso8859-1", "utf-8", {:invalid => :replace, :replace => "-"}).encode("utf-8")
的问题是,我需要这个错误编码的字符,所以更换为“ - ”是没用的我。我怎样才能修复与红宝石的文档中错误的编码字符?
编辑:我已经试过了:fallback
选项,但没有成功(其中再没替换):
string.encode("iso8859-1", "utf-8",
:fallback => {"\x80" => "123"}
)
备用将只有没有其他选项。看到我之前发布的链接。 – phoet 2012-07-10 07:45:32
不,我已经尝试了没有额外的选项,并没有工作:( – Fu86 2012-07-10 13:28:33