Problème d'accent avec Net::FTP - Perl - Programmation
Marsh Posté le 07-03-2008 à 15:10:50
A mon avis le problème c'est que tu donne des accents UTF8 alors que le serveur attend de l'ISO8859-1, ou l'inverse. Peut-être que l'autre client FTP fait des conversions ? Essaie déjà d'envoyer des caractères accentués UTF8 puis ISO8859-1 via Net::FTP, et vois si l'un des deux charsets fonctionne.
Marsh Posté le 07-03-2008 à 17:56:30
je ne sais pas comment changer de charsets, je ne vois rien à ce sujet dans le pod du module
en résumé, je me contente juste de faire ces commandes :
my $ftp = Net::FTP->new([monip], Debug => 0);
$ftp->login([login],[pass]);
$ftp->binary();
$ftp->mkdir("éssai" );
$ftp->quit();
Marsh Posté le 07-03-2008 à 21:17:49
Ca dépend de comment ton source perl est encodé... Essaie un truc comme ça :
my $dirname_utf8 = pack("cca*", 0xc3, 0xa9, "ssai_utf8" ); |
Et regarde si un des deux répertoires est créé correctement.
Marsh Posté le 10-03-2008 à 17:57:44
merci pour ton conseil matafan !
J'ai donc essayé ton code, et c'est l'essai en UTF8 qui fonctionne bien.
Donc si j'ai bien suivi, mon serveur attend de l'UTF8.
Maintenant vient la question : comment je fais pour que mon client envoi toujours en UTF8 ?
Parce que je me vois mal utiliser un pack à chaque fois
Marsh Posté le 10-03-2008 à 18:17:58
Je viens de trouver ça :
Code :
|
Ca fonctionne mais est-ce que c'est une bonne solution ? pas trop lourd ?
Marsh Posté le 07-03-2008 à 13:41:39
Hello à tous !
J'ai programmé un petit client FTP en perl en utilisant le module Net::FTP
Je fais connecté ce client à un serveur FileZilla. Le client crée des répertoires sur le serveur, et mon problème c'est que les lettre accentuées ne passent pas !!
ex: Si le client crée un répertoire "problème", le répertoire aura comme nom : "problme".
(à priori, le problème ne vient pas du serveur car je n'ai aucun souci lorsque j'utilise un autre client FTP)
Merci de votre aide !