Hola,
Estoy queriendo escribir un archivo de texto con las funciones DFWOpen() y demás.
El problema es que ejecutando en plataforma Linux el archivo queda generado con los saltos de línea linux (LF), cuando la interfaz que lo recibe solo acepta saltos de línea Windows (CRLF).
La solución que hice es de este estilo:
Este enforque tiene 2 problemas:
Gracias,
Estoy queriendo escribir un archivo de texto con las funciones DFWOpen() y demás.
El problema es que ejecutando en plataforma Linux el archivo queda generado con los saltos de línea linux (LF), cuando la interfaz que lo recibe solo acepta saltos de línea Windows (CRLF).
La solución que hice es de este estilo:
&eol = chr(13) + chr(10) // CR LF
&err = DFWOpen(&fullpath, '', '', 0, "iso-8859-1")
...
&err = DFWPTxt(&Lin) // Línea 1
&err = DFWPTxt(&eol)
...
&err = DFWPTxt(&Lin) // Línea N
&err = DFWPTxt(&eol)
&err = DFWNext() // Baja todo el texto al archivo
&err = DFWClose()
&err = DFWOpen(&fullpath, '', '', 0, "iso-8859-1")
...
&err = DFWPTxt(&Lin) // Línea 1
&err = DFWPTxt(&eol)
...
&err = DFWPTxt(&Lin) // Línea N
&err = DFWPTxt(&eol)
&err = DFWNext() // Baja todo el texto al archivo
&err = DFWClose()
Este enforque tiene 2 problemas:
- Creo que queda todo el archivo en memoria y baja al archivo recién en el DFWNext(), con lo cual estoy haciendo un consumo de memoria innecesario.
- Por más que los saltos de línea intermedios quedan como CFLF, el DFWNext() crea el último salto de línea estilo linux (LF).
Gracias,
Pablo Moleri
13 de noviembre de 2025 a las 1:52
Hola!
Quisiera saber cómo lo solucionaste tengo el mismo inconveniente, que al final de cada línea me genera el LF y necesito que genera CRLF. Estoy trabajando con Gx 16 U11 generador Java.
Saludos!