Cómo: |
La función XMLENCOD codifica los cinco siguientes caracteres con codificación XML estándar, cuando aparecen en una cadena:
Nombre del carácter |
Carácter |
Representación codificada |
---|---|---|
ampersand |
& |
& |
signo de mayor a |
> |
> |
signo de menor a |
< |
< |
comillas dobles |
" |
" |
comillas simples (apóstrofe) |
' |
' |
XMLENCOD(inlength, source_string, option, outlength, output)
donde:
Número entero
Es la longitud del campo que contiene la cadena de caracteres de origen o un campo que contiene la longitud.
Alfanumérico
Es el nombre del campo que contiene la cadena de caracteres de origen, o una cadena entre comillas simples (').
Número entero
Es un código que especifica si se va a procesar una cadena que ya contiene caracteres con codificación XML. Los valores válidos son:
Número entero
Es la longitud de la cadena de caracteres de salida o un campo que contiene la longitud.
Nota: La longitud de la salida, en el peor de los casos, puede ser seis veces superior a la de la entrada.
Número entero
Es el campo que contiene el resultado o es el formato del valor de salida, entre comillas simples.
El archivo XMLFUNCS es de tipo .csv y contiene algunos caracteres no codificados, y otros con codificación XML. El archivo máster es:
FILE = XMLFUNCS, SUFFIX=COM,$ SEGNAME = SEG01, SEGTYPE=S1,$ FIELD=INSTRING, ALIAS=CHARS, USAGE=A30,ACTUAL=A30,$
Contenidos del archivo:
CHARS: & < > ,$ ENCODED: & > ,$ ENCODED: " ' ,$ MIXED: & < > ,$
XMLENCOD codifica en XML cualquier carácter compatible para producir OUTSTRING1, y procesa todas las cadenas de caracteres, independientemente de que ya contengan caracteres con codificación XML. Para OUTSTRING2, sólo codifica las cadenas que no contienen ningún carácter con codificación XML. Tenga en cuenta que algunos visores descodifican automáticamente los valores codificados para la visualización, resultando en una salida con formato de texto simple (FORMAT WP):
FILEDEF XMLFUNCS DISK xmlfuncs.csv DEFINE FILE XMLFUNCS OUTSTRING1/A30=XMLENCOD(30,INSTRING,1,30,'A30'); OUTSTRING2/A30=XMLENCOD(30,INSTRING,0,30,'A30'); END TABLE FILE XMLFUNCS PRINT INSTRING OUTSTRING1 IN 24 OUTSTRING2 IN 48 ON TABLE SET PAGE NOPAGE ON TABLE PCHOLD FORMAT WP END
En OUTSTRING1, los caracteres compatibles han sido codificados en XML-; la salida se genera incluso cuando la cadena de entrada contiene caracteres codificados. OUTSTRING2 sólo se genera cuando no existe ningún carácter con codificación XML, en la cadena de entrada:
INSTRING OUTSTRING1 OUTSTRING2 -------- ---------- ---------- CHARS: & < > CHARS: & < > CHARS: & < > ENCODED: & > ENCODED: & > ENCODED: " ' ENCODED: " ' MIXED: & < > MIXED: & < >
WebFOCUS |