XMLDECOD : décodage des caractères codés XML

Comment :

La fonction XMLDECOD décode les cinq caractères codés XML standards suivants lorsqu'ils sont rencontrés dans une chaîne :

Nom Caractère

Caractère

Représentation codée XML

esperluette

&

&

supérieur à symbole

>

>

inférieur à symbole

<

&lt;

guillemets doubles

"

&quot;

guillemet simple (apostrophe)

'

&apos;



x
Syntaxe : Décode des caractères codés XML
XMLDECOD(inlength, source_string, outlength,  output)

où :

inlength

Entier

Est la longueur du champ contenant la chaîne de caractères source, ou un champ qui contient la longueur.

source_string

Alphanumérique

Est le nom du champ contenant la chaîne de caractères source ou la chaîne entourée de guillemets simples (').

outlength

Entier

Est la longueur de la chaîne de caractères de sortie, ou d'un champ qui contient la longueur.

output

Entier

est le champ qui contient le résultat, ou le format entier de la valeur de sortie entre guillemets simples.



Exemple : Décodage des caractères codés XML

Le fichier XMLFUNCS et un fichier .csv qui contient certains caractères non codés et certains caractères codés XML. Le fichier principal est :

FILE = XMLFUNCS, SUFFIX=COM,$
SEGNAME = SEG01, SEGTYPE=S1,$
FIELD=INSTRING, ALIAS=CHARS, USAGE=A30,ACTUAL=A30,$

Les contenus du fichier sont :

CHARS: &  < >  ,$
ENCODED: &amp; &gt;  ,$
ENCODED: &quot; &apos;   ,$
MIXED:  &amp;  < &gt;   ,$

XMLDECOD décode tous les caractères codés XML supportés. Notez que certaines visionneuses décodent automatiquement les valeurs encodées pour affichage, de façon à ce que la sortie soit produite en format texte brut (FORMAT WP).

FILEDEF XMLFUNCS DISK xmlfuncs.csv
DEFINE FILE XMLFUNCS
OUTSTRING/A30=XMLDECOD(30,INSTRING,30,'A30');
END
TABLE FILE XMLFUNCS
PRINT INSTRING OUTSTRING
ON TABLE PCHOLD FORMAT WP
ON TABLE SET PAGE NOPAGE

La chaîne de sortie, les caractères codés XML ont été décodés, et les caractères qui n'ont pas été codés ont été laissés comme s'ils étaient dans la chaîne d'entrée :

  INSTRING                        OUTSTRING          
  --------                        ---------                     
  CHARS: &  < >                   CHARS: &  < >                 
  ENCODED: &amp; &gt;             ENCODED: & >                  
  ENCODED: &quot; &apos;          ENCODED: " '                  
  MIXED:  &amp;  < &gt;           MIXED:  &  < >                

WebFOCUS