Asunto: Error en XML not well-formed invalid token
Hola, estoy desarrollando una aplicación en Delphi que me genera un XML para enviar unos datos de facturas y contabilidad vía mail a otra entidad. El caso es que cuando abro el XML con XML Copy Editor, la herramienta gratuita que comprueba si están bien formados los XML, me muestra este error:
Error at line 555, column 43: not well-formed (invalid token)
He revisado esa línea y columna y no veo ningún problema, todas las etiquetas están bien finalizadas y no entiendo qué ocurre ¿alguna idea?
Publicado:
Mie May 07, 2014 6:52 am
alonsojpd Administrador/Moderador
Registrado: Sep 16, 2003 Mensajes: 2687
Asunto: Re: Error en XML not well-formed invalid token
Anuncios
El error que nos comentas "invalid token" en un XML suele ser debido a que estás usando un carácter especial no permitido. XML tiene varios caracteres que no permite que se escriban directamente como:
* menor que (<)
* mayor que (>)
* ampersand (&)
* apóstrofe (')
* comillas (")
Asegúrate de que en los valores que introducies en el XML no tengas alguno de estos caracteres.
Publicado:
Mie May 07, 2014 7:54 am
varios Magnífico usuario
Registrado: Oct 10, 2006 Mensajes: 2092
Asunto: Re: Error en XML not well-formed invalid token
Anuncios
alonsojpd escribió:
El error que nos comentas "invalid token" en un XML suele ser debido a que estás usando un carácter especial no permitido. XML tiene varios caracteres que no permite que se escriban directamente como:
* menor que (<)
* mayor que (>)
* ampersand (&)
* apóstrofe (')
* comillas (")
Asegúrate de que en los valores que introducies en el XML no tengas alguno de estos caracteres.
Hola, muchas gracias por la información, efectivamente he revisado y en esa línea que me da error tengo un "&", pero el problema es que necesito que aparezca pues la aplicación que recibe los datos comprueba el nombre exacto y debe llevar ese & ¿cómo lo pongo?
Publicado:
Mie May 07, 2014 7:57 am
alonsojpd Administrador/Moderador
Registrado: Sep 16, 2003 Mensajes: 2687
Asunto: Re: Error en XML not well-formed invalid token
Anuncios
varios escribió:
Hola, muchas gracias por la información, efectivamente he revisado y en esa línea que me da error tengo un "&", pero el problema es que necesito que aparezca pues la aplicación que recibe los datos comprueba el nombre exacto y debe llevar ese & ¿cómo lo pongo?
Para ponerlo puedes usar un código de espaque, similar a los códigos de escape del HTML, te indicamos el código de escape de cada carácter reservado de XML:
* menor que (<) ---> & l t ;
* mayor que (>) ---> & g t ;
* ampersand (&) ---> & a m p ;
* apóstrofe (') ---> & a p o s ;
* comillas (") ---> & q u o t ;
<factura>2232</factura>
<cliente>AjpdSoft & a m p ; Proyecto A</a>
Nota: ten en cuenta que hemos añadido un espacio a todos los códigos de escape, por ejemplo " & a m p ;" sería sin los espacios que hemos colocado entre cada carácter. Hemos hecho esto porque estos códigos de escape para reemplazar caracteres especiales en XML son como los de HTML y por lo tanto el foro nos los reemplaza por su carácter correspondiente.
Publicado:
Mie May 07, 2014 8:01 am
varios Magnífico usuario
Registrado: Oct 10, 2006 Mensajes: 2092
Asunto: Re: Error en XML not well-formed invalid token
Anuncios
alonsojpd escribió:
* menor que (<) ---> & l t ;
* mayor que (>) ---> & g t ;
* ampersand (&) ---> & a m p ;
* apóstrofe (') ---> & a p o s ;
* comillas (") ---> & q u o t ;
Ok, genial, he creado una función basándome en la vuestra para reemplazar texto en Delphi:
Puede publicar nuevos temas en este foro No puede responder a temas en este foro No puede editar sus mensajes en este foro No puede borrar sus mensajes en este foro No puede votar en encuestas en este foro
Visita nuestro nuevo sitio web con programas y contenidos actualizados: Proyecto A