Ce serait pratique de pouvoir transformer les caractères unicode (du japonais en l'occurence) en leur équivalent dans un autre charset (SJIS en l'occurence) ...
je n'ai rien vu sur les convertions de Charset donc j'imagine que rien n'est prévu a ce niveau ^^;
Sinon si on pouvais enoyer l'ancien nom vers un programme pour qu'il retourne le nouveua nom ça m'arrange aussi
Via l'action "Multiple string replacement" ça devrait être faisable, il suffit que quelqu'un fasse la liste des équivalences.
J'avais fait cette fonction pour ça, mais la seule liste que j'ai pu faire c'est celle qui sert à supprimé les accents ouest-européens.
import os
# Trying to make it recursive...
base=u'c:/japanese/'
def do_rename(mypath):
filelist=os.listdir(mypath)
for i in range(0,len(filelist)):
# first : convert name using PHP and iconv()
curfile=filelist[i]
if ( (curfile==".") or (curfile=="..")):
continue
curfile=curfile.encode('utf-8')
print curfile
curfile=unicode(curfile,'iso8859-15')
# rename file to new name :)
if (filelist[i] != curfile):
os.rename(mypath+filelist[i],mypath+curfile)
# is a dir ?
if (os.path.isdir(mypath+curfile)):
do_rename(mypath+curfile+"/")
return 1
def do_rename2(mypath):
filelist=os.listdir(mypath)
for i in range(0,len(filelist)):
# first : convert name using PHP and iconv()
curfile=filelist[i]
if ( (curfile==".") or (curfile=="..")):
continue
curfile=curfile.encode('iso8859-15')
print curfile
curfile=unicode(curfile,'utf-8')
# rename file to new name :)
if (filelist[i] != curfile):
os.rename(mypath+filelist[i],mypath+curfile)
# is a dir ?
if (os.path.isdir(mypath+curfile)):
do_rename2(mypath+curfile+"/")
return 1
do_rename(base)
suffit de remplacer do_rename par do_rename2 (a la fin) pour décoder (utf-8 -> unicode).
[/code]
Il doit y avoir le même genre de trucs dans les fonctions Windows et/ou Delphi, c'est vrai que je pourrais rajouter une action pour encoder/décoder l'unicode en un charset local.
D'un autre côté, je ne suis pas sür que ça marche très fort sur les OS non-NT, vu que les fonctions unicode du programme ne sont utilisées que sous NT.