Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

303
Visualizações
¿Estos caracteres son válidos para XML?

¿Son estos datos XML válidos (el valor del contenido del mensaje en particular)?

Lo obtengo de una API.

Luego recibo un error cuando paso este XML a una función de Postgres para guardarlo en la base de datos de Postgres.

 <rows> <row messageDateUTC="2020-06-01T21:20:37.120" texterAddress="" texterStreet="" messageContent="Hey beautiful it&apos;s Scott!&#55357;&#56842;" /> </rows>

Me pregunto si es un problema de API, o un problema con el módulo del lado del cliente que genera el XML, o tal vez Postgres tiene un problema y no puede manejar estos caracteres.

Error aquí:

 Caused by: org.postgresql.util.PSQLException: ERROR: invalid XML content Detail: line 5: xmlParseCharRef: invalid xmlChar value 55357 ddress="" texterStreet="" messageContent="Hey beautiful it&apos;s Scott!&#55357; ^ line 5: xmlParseCharRef: invalid xmlChar value 56842 " texterStreet="" messageContent="Hey beautiful it&apos;s Scott!&#55357;&#56842; ^ line 23: chunk is not well balanced
over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

tl; dr No, no son válidos, lo que sea que hizo la codificación tiene errores o se le dijo información de codificación incorrecta sobre la entrada.

55357 y 56842 son 0xD83D y 0xDE0A en hexadecimal respectivamente.

En Unicode están en rangos llamados "High Surrogate" y "Low Surrogate" respectivamente.

Eso significa que no son puntos de código Unicode adecuados, sino que se utilizan en UTF-16 para construir un único valor Unicode que no cabe en 16 bits (es decir, el plano multilingüe básico).

Estos dos valores específicos se decodifican en U+1F60A CARA SONRIENTE CON OJOS SONRIENTES . La entidad HTML decimal correcta para eso sería &#128522; .

La razón más probable de esto es que alguna transformación que no conoce UTF-16 o pensó que este texto no es UTF-16 realizó la codificación (pero debería haber detectado que esos valores no son válidos e informó un error incluso en ese caso ).

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda