Transform textfiles from any encoding type to utf8
wget -O utf8.php http://goo.gl/QrblHb
chmod +x utf8.php
./utf8.php
Example, for all srt in a folder:
for f in *.srt; do ./utf8.php $f; done
#!/usr/bin/env php | |
<?php | |
$file = isset($argv[1]) ? $argv[1]: ''; | |
if (! is_file($file)) { | |
echo 'ERROR: Not a file' . PHP_EOL; | |
exit(1); | |
} | |
$commandGetOriginalEncoding = 'file -b --mime-encoding "' . $file . '"'; | |
$originalEncoding = exec($commandGetOriginalEncoding); | |
$commandSetUtf8 = 'iconv -f ' . $originalEncoding . ' -t utf8 "' . $file . '" > "_' . $file . '"'; | |
exec($commandSetUtf8); | |
$commandGetFinalEncoding = 'file -b --mime-encoding "_' . $file . '"'; | |
$finalEncoding = exec($commandGetFinalEncoding); | |
echo PHP_EOL; | |
echo 'DONE' . PHP_EOL; | |
echo PHP_EOL; | |
echo 'Final Encoding: ' . $finalEncoding . PHP_EOL; | |
echo 'Final file: _' . $file . PHP_EOL; | |
echo 'Original Encoding: ' . $originalEncoding . PHP_EOL; |