Мне нужно заменить каждое вхождение http://
//
в файл. Файл может быть (по крайней мере) в UTF-8
, CP1251
, или CP1255
.Надежная кодировка Perl с файлом :: Slurp
Выполняет ли следующая работа?
use File::Slurp;
my $Text = read_file($File, binmode=>':raw');
$Text =~ s{http://}{//}gi;
write_file($File, {atomic=>1, binmode=>':raw'}, $Text);
Это кажется правильным, но я должен быть уверен, что файл не будет поврежден ни в какой кодировке. Пожалуйста, помогите мне быть уверенным.
Похоже, что у нас нет файлов UTF-16 или UTF-32. – porton
В коде есть опечатка. Он не будет компилироваться с неправильным именем модуля. Пожалуйста, исправьте это. – simbabque
Знаете ли вы кодировку каждого файла заранее? – simbabque