Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Crear fichero XML (https://www.clubdelphi.com/foros/showthread.php?t=77005)

newtron 13-12-2011 11:18:30

Crear fichero XML
 
Hola a tod@s.

Necesito exportar datos de mis tablas a ficheros XML con formato ISO-8859-1. He estado haciendo pruebas con un dataset en memoria pero al grabarlo me salen con otro formato y no me vale.

¿Me podríais indicar si usando dataset se puede exportar a ese formato y en caso contrario la forma más fácil de generar un fichero XML con el mismo?

Gracias y un saludo

Ñuño Martínez 13-12-2011 15:54:33

¿Cómo indicas en el archivo XML la codificación de caracteres? Puede que no lo estés indicando correctamente.

newtron 13-12-2011 16:42:42

Cita:

Empezado por Ñuño Martínez (Mensaje 421028)
¿Cómo indicas en el archivo XML la codificación de caracteres? Puede que no lo estés indicando correctamente.

Pues he probado a hacer un WriteString del archivo con los parámetros dfXML y dfXMLUTF8, y ninguno de los dos son el que busco, el otro parámetro que queda sería dfBinary, así que me huego que por ahí no voy a poder resolverlo.

Ñuño Martínez 15-12-2011 20:22:04

¿Podrías poner aquí un resumen del archivo XML?

newtron 16-12-2011 09:27:10

Cita:

Empezado por Ñuño Martínez (Mensaje 421258)
¿Podrías poner aquí un resumen del archivo XML?

Claro, este es un ejemplo cortito de uno de los archivos que tengo que generar:

Código:

<?xml version="1.0" encoding="ISO-8859-1"?>
<DATAPACKET Version="2.0">
<METADATA>
<FIELDS>
<FIELD FieldName="EMPRESA_CODIGO" FieldType="String"/>
<FIELD FieldName="EMPRESA_NIF" FieldType="String"/>
<FIELD FieldName="EMPRESA_NOMBRE" FieldType="String"/>
<FIELD FieldName="CANAL" FieldType="String"/>
<FIELD FieldName="INTERVALO_INICIO" FieldType="Date"/>
<FIELD FieldName="INTERVALO_FIN" FieldType="Date"/>
<FIELD FieldName="APLICACION_ORIGEN" FieldType="String"/>
<FIELD FieldName="VERSION_DICCIONARIO" FieldType="String"/>
</FIELDS>
<TABLE TableName="CABECERA"/>
</METADATA>
<ROWDATA>
<ROW EMPRESA_CODIGO="00023" EMPRESA_NIF="A01234567" EMPRESA_NOMBRE="EMPRESA DE PRUEBA" CANAL="0" INTERVALO_INICIO="01.01.2011" INTERVALO_FIN="31.03.2011" APLICACION_ORIGEN="MSGEST" VERSION_DICCIONARIO = "2"/>
</ROWDATA>
</DATAPACKET>

Saludos

Edito: uh.. ¿y por qué no se ve? ¿algún mode me lo mira?

Ñuño Martínez 18-12-2011 21:33:41

No sé, parece estar bien. Lo único que se me curre es que el archivo, en realidad, no tenga codificación ISO-8859-1. A mi me ha pasado alguna vez, que lo he guardado diciéndole que era UTF-8 pero en realidad era ISO, o viceversa. ¿Seguro seguro que es ISO?

newtron 19-12-2011 09:52:05

Cita:

Empezado por Ñuño Martínez (Mensaje 421513)
No sé, parece estar bien. Lo único que se me curre es que el archivo, en realidad, no tenga codificación ISO-8859-1. A mi me ha pasado alguna vez, que lo he guardado diciéndole que era UTF-8 pero en realidad era ISO, o viceversa. ¿Seguro seguro que es ISO?

Bueno, eso es lo que me han contado porque yo no tengo ni idea sobre XML pero si que he hecho alguna prueba generando un UTF-8 y no queda exactamente igual.

genius78 21-12-2011 17:25:27

DataSetToXML
 
Investiga la funcion DataSetToXML creo que te puede ayudar.

newtron 21-12-2011 19:30:39

Gracias, no sabía que existía esa función. Le echaré un vistazo aunque ahora me han parado ese proyecto temporalmente.

Saludos


La franja horaria es GMT +2. Ahora son las 21:30:33.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi