Xtra FileIO - problemas con writestring

Hola a todos,
Estoy utilizando xtra FileIO, y grabando un archivo de texto en disco.
Pero necesito grabarlo por lineas, por lo que utilizo un member de texto y le asigno a cada linea el string de la forma :
myfile es una instancia de XtraFileIO
member("cosa").line=texto
writestring(myfile, member("cosa").line)
El algoritmo funciona bien pero...
Cuando lo abro en block de notas no lo muestra linea a linea, sino que lo muestra todo junto, poniendo el código ascii del enter. Es como si faltara el retorno de carro...
Sin embargo, al abrirlo en wordpad lo veo perfectamente.
¿Alguien me puede ayudar?
Desde ya muchas gracias

1 Respuesta

Respuesta
1
La clave esta en que cuando escribas debes introducir un intro de este modo:
Writestring(instancia,"hola"&numToChar(13))
Te ogo aquí ejemplos completos:
On escribirlineas me
instancia=new(xtra "fileIO")
nombre_archivo="c:\texto.txt"
if nombre_archivo="" then return FALSE
--Esto analiza los errores si se producen
if status(instancia)<>0 then
fallo=error(instancia, status(instancia))
alert ("Se ha poducido un error en la lectura, debe repetir la operaciòn:")
return ""
end if
--Abre el archivo en la memoria para poder trabajar con el
--el tercer parámetro es 1 porque el archivo se abre solo para escribir
openfile(instancia, nombre_archivo, 2)
--Coloca el puntero del archivo en la posición del carácter nº 0
--es decir, al inicio deel archivo
--setposition(instancia, 0)
repeat with i=1 to 4
writestring(instancia,"hola"&numToChar(13))
end repeat
--Se borra la instancia
Closefile(instancia)
end
on leerlineas me
instancia=new(xtra "fileIO")
nombre_archivo="c:\texto.txt"
if nombre_archivo="" then return FALSE
--Esto analiza los errores si se producen
if status(instancia)<>0 then
fallo=error(instancia, status(instancia))
alert ("Se ha poducido un error en la lectura, debe repetir la operaciòn:")
return ""
end if
--Abre el archivo en la memoria para poder trabajar con el
--el tercer parámetro es 1 porque el archivo se abre solo para leer
openfile(instancia, nombre_archivo, 1)
--Coloca el puntero del archivo en la posición del carácter nº 0
--es decir, al inicio deel archivo
--setposition(instancia, 0)
repeat while readline(instancia)<>""
-- waiting for time
put readline(instancia)
end repeat
--Se borra la instancia
Closefile(instancia)
end

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas