portinstall iconv
si vous avez généré a partir de windows la commande suivante devrait faire l'affaireiconv -c -f ANSI -t UTF-8 tst.txt > tst2.txt
sinon la liste des charset supporté est dispo en tapaniconv -l
Voici le petit script php que j'ai écrit pour automatiser, la conversion de les sites<?
define('SRC','/usr/home/mazenovi/annuaire');
define('TARGET','/usr/exports/annuaire');
define('CHARSET_SRC','ANSI');
define('CHARSET_TARGET','UTF-8');
$EXT= Array('php','htm','html','css','js');
function ext2conv($file){
global $EXT;
return in_array(array_pop(explode(".",$file)),$EXT);
}
function walkrec($dirSRC,$dirTARGET){
$d = opendir($dirSRC);
while (($c = readdir($d)) !== false) {
if($c!='.' && $c!='..'){
if(is_file($dirSRC."/".$c))
if(ext2conv($c)){
system("dosunix '".addslashes($dirSRC."/".$c)."' /tmp/tmpConvert.txt");
system("iconv -c -f ".CHARSET_SRC." -t ".CHARSET_TARGET." /tmp/tmpConvert.txt>'".addslashes($dirTARGET."/".$c)."'");
}
else
system("cp '".addslashes($dirSRC."/".$c)."' '".addslashes($dirTARGET."/".$c)."'");
if(is_dir($dirSRC."/".$c)){
if(!is_dir($dirTARGET."/".$c))
mkdir($dirTARGET."/".$c);
walkrec($dirSRC."/".$c, $dirTARGET."/".$c);
}
}
}
closedir($d);
}
if (!is_dir(TARGET))
mkdir(TARGET,0744) or die("création de la cible impossible!\n\n");
if (is_dir(SRC)) {
walkrec(SRC,TARGET);
system("rm /tmp/tmpConvert.txt");
echo "la conversion s'est déroulée avec succés\n\n";
}
else
die("la source n'existe pas!\n\n");
?>



