Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 07/12/2008, à 15:28

ChristopheCharron

Comment éliminer un caractère "cabalistique"?

Bonsoir,

je récupère un mail dont voici la partie qui me pose problème :

Subject: =?utf-8?B?RGVsaXZlcnkgRmluYWwgRmFpbHVyZSBOb3RpY2UA?=
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: base64

Q2FuIG5vdCBkZWxpdmVyIHRoZSBtZXNzYWdlIHlvdSBzZW50LiBXaWxsIG5vdCByZXRyeS4A

Après décodage et lors du traitement dans un fichier xml (voir icihttp://test03.christophe-charron.org/pu … stique.xml), je plante.
En effet, en lisant ce fichier en binaire, je m'aperçois qu'il figure un caractère avec 0 comme code ascii !!!

- Comment puis-je détecter ce genre de caractère ?
- Comment les remplacer ?
- Quels sont les autres caractères dont il faut que je me méfie ?

D'avance, merci pour vos lumières


Cordialement,
Christophe Charron
http://xsoftware.fr

Hors ligne

#2 Le 07/12/2008, à 17:12

HP

Re : Comment éliminer un caractère "cabalistique"?

Un truc que je ne comprends pas c'est cette structure :

<donnees><quoi  action_cleunik="10003513" description="" choix_cleunik="-110102" dateheuredebut="2008-12-03 07:35:02" dateheurefin="2008-12-03 07:35:02" datedebut="03.12.2008" datefin="03.12.2008" heuredebut="07:35:02" heurefin="07:35:02" genre="Réception de courriel" priorite="Normale" statut="En cours" sujet="Delivery Final Failure Notice�" reference="" poidsdesmots="" qui="" prop_pj=""/></donnees>

et non pas un truc du genre :

<?xml version="1.0" encoding="UTF-8"?>
<email>
    <priority>0</priority>
    <subject><![CDATA[Delivery Final Failure Notice�]]></subject>	
    <content><![CDATA[]]></content>
    <author></author>
</email>

Puis dedans les dates en respectant un quelconque RFC… etc…
Pourquoi ce choix ?

ça ne résout pas le souci d'encodage, mais ça évite déjà l'erreur de parsing…

Dernière modification par HP (Le 07/12/2008, à 17:13)


cat /dev/urandom >/dev/null 2>&1 #github

Hors ligne

#3 Le 07/12/2008, à 21:19

ChristopheCharron

Re : Comment éliminer un caractère "cabalistique"?

HP a écrit :

Un truc que je ne comprends pas c'est cette structure :

<donnees><quoi  action_cleunik="10003513" description="" choix_cleunik="-110102" dateheuredebut="2008-12-03 07:35:02" dateheurefin="2008-12-03 07:35:02" datedebut="03.12.2008" datefin="03.12.2008" heuredebut="07:35:02" heurefin="07:35:02" genre="Réception de courriel" priorite="Normale" statut="En cours" sujet="Delivery Final Failure Notice�" reference="" poidsdesmots="" qui="" prop_pj=""/></donnees>

et non pas un truc du genre :

<?xml version="1.0" encoding="UTF-8"?>
<email>
    <priority>0</priority>
    <subject><![CDATA[Delivery Final Failure Notice�]]></subject>	
    <content><![CDATA[]]></content>
    <author></author>
</email>

Puis dedans les dates en respectant un quelconque RFC… etc…
Pourquoi ce choix ?

Depuis l'abandon du RDF dans le peuplement des arbres xul par Mozilla, c'est la seule syntaxe acceptée que je connaisse.

HP a écrit :

ça ne résout pas le souci d'encodage, mais ça évite déjà l'erreur de parsing…

Oui, mais je ne peux pas remplir mon arbre avec !!


Cordialement,
Christophe Charron
http://xsoftware.fr

Hors ligne

#4 Le 07/12/2008, à 21:47

ChristopheCharron

Re : Comment éliminer un caractère "cabalistique"?

Bonsoir,

j'ai trouvé cela, en php

$vl_c_z02=preg_replace("/\\x0|[\x01-\x1f]/U","",$vl_c_z02);

et également cela

$vl_c_z02 = preg_replace('/^\W+|\W+$/', '', $vl_c_z02);

La première syntaxe me paraissant plus "sioux".

Des commentaires ?


Cordialement,
Christophe Charron
http://xsoftware.fr

Hors ligne