cerhu > comp.* > comp.algorithmes

Une Bévue (09/06/2008, 08h36)
je recherche un algo d'encodage de PATH (au sens Unix), càd un couple
encodeur/decodeur qui puisse transformer, dans les deux sens un PATH
quelqconque (càd ne comportant pas \0 et /) en une chaîne de caractères
ne comportant que :
A-Za-z0-9:.

si vous avez des pistes...
Olivier Miakinen (09/06/2008, 09h53)
Le 09/06/2008 08:36, Une Bévue a écrit :
> je recherche un algo d'encodage de PATH (au sens Unix), càd un couple
> encodeur/decodeur qui puisse transformer, dans les deux sens un PATH
> quelqconque (càd ne comportant pas \0 et /) en une chaîne de caractères
> ne comportant que :
> A-Za-z0-9:.
> si vous avez des pistes...


:-D

J'aurais dû lire ce groupe avant de lire f.c.i.w.auteurs ! Je t'ai fait
une proposition là-bas, si ce n'est qu'elle utilise le « - » et le « _ »
mais pas le « . ».
jean-marc (09/06/2008, 13h58)
""Une Bév" "ue"" <unbewusst.sein> wrote in
message
news:sein
> je recherche un algo d'encodage de PATH (au sens Unix), càd un couple
> encodeur/decodeur qui puisse transformer, dans les deux sens un PATH
> quelqconque (càd ne comportant pas \0 et /) en une chaîne de caractères
> ne comportant que :
> A-Za-z0-9:.
> si vous avez des pistes...


Hello,

Tu peux encoder en Base64, par exemple:
[..]

C'est un classique dans l'industrie software,
c'est normé et décrit exhaustivement.

Cf. RFC 3548
[..]
Une Bévue (09/06/2008, 14h16)
jean-marc <jean_marc_n2> wrote:

> Tu peux encoder en Base64, par exemple:
> [..]
> C'est un classique dans l'industrie software,
> c'est normé et décrit exhaustivement.
> Cf. RFC 3548
> [..]


Oui, merci beaucoup, c'est ce qu'on m'a conseillé par ailleurs.
En fait il faut un base64 modifié pour être compatible avec les specs
des IDs (au sens HTML/CSS) :
// Olivier Miakinen sur fr.comp.infosystemes.[..]
// Message-ID: <484cdf57$1>
function base64_pathname_encode($path) {
return strtr(base64_encode($path), '+/=', '-:_');
}
function base64_pathname_decode($id) {
return base64_decode(strtr($id, '-:_', '+/='));
}

pour la version php.

pour la version JavaScript, j'ai :
// see [..]
function base64_pathname_encode(path) {
return
Base64.encode(path).replace(/\+/g,'-').replace(/\//g,':').replace(/\=/g,
'_');
}
function base64_pathname_decode(id) {
return
Base64.decode(id.replace(/-/g,'+').replace(/:/g,'/').replace(/_/g,'='));
}

Merci !
Discussions similaires
encodage d'un path

encodage d'un path

méthode spéciale sur Array àpropos de path Unix

recherche d'un l'algo


Fuseau horaire GMT +2. Il est actuellement 02h50. | Privacy Policy