在超级搜索perl中转换编码文件的方法之后,我总是问自己这是做什么的最佳方法.
我的问题很简单:我有很多不同编码的文件(UTF-8,ISO-8859-1,windows-1252 ......),我想在ISO-8859-1中转换所有这些文件.
Text :: Iconv在从大多数编码转换到大多数编码时非常有效且非常快.它使用起来也很简单
use Text::Iconv; $converter = Text::Iconv->new("fromcode", "tocode"); $converted = $converter->convert("Text to convert");
一个简单的例子
use Text::Iconv; my $converter = Text::Iconv->new("utf8", "iso-8859-1"); my $iso_8859_1_string = $converter->convert($some_utf8_string);
如果您不知道要转换的文件的编码,可以使用Encode :: Detect :: Detector自动查找编码.
use Encode::Detect::Detector; my $charset = detect($string);