leer los ultimos datos introducidos en un archivo de texto

15/06/2007 - 03:49 por Ivan | Informe spam
hola a todos,

estoy probando a crear un archivo de texto con una especie de 'reporte' de actividad de la aplicacion, sobre todo cuando
se dan determinadas circunstancias ( errores, modificaciones, etc).

la verdad es que no tengo mucha idea sobre el tema ni totalmente definido como estructurar los datos guardados para
facilitar la recuperacion de estos.

de momento una de mis practicas es algo asi

Open ThisWorkbook.FullName & ".txt" For Append As #1
Write #1,
Write #1, Format(dblAcceso, "dd/mm/yy hh:mm:ss"), Proceso, AcsPrj & "," & AcsLibro & "," & AcsHojas, Lector, NroInc
Close #1

donde dblAcceso seria el momento en que se produce la incidencia, y el resto una serie de variables con los datos que me
interesa recuperar

el tema esta en como recuperar la/las ultima/s lineas introducidas y/o como buscar en base a un criterio ( pej. que
dblAcceso sea anterior/posterior a determinada fecha)

supongo que una vez 'obtenidos' los datos no sera dificil cargarlo en un rango ¿y en un listbox directamente?? la idea
(inicial) seria realizar la busqueda desde un userform y cargar los datos en algun control para su revision/utilizacion

bueno, lo cierto es que apenas he practicado con la 'lectura' de txt y que mis busquedas no acaban de aclararme a este
respecto

si podeis echarme una mano os lo agradezco

un saludo y hasta pronto
Ivan

PD: estoy totalmentee abierto a cualquier sugerencia/modificacion sobre la introduccion de los datos en el txt, si esto
facilita su lectura posterior

Preguntas similare

Leer las respuestas

#1 Juan M
15/06/2007 - 09:38 | Informe spam
"Ivan" escribió en el mensaje
news:uD$
hola a todos,

estoy probando a crear un archivo de texto con una especie de 'reporte' de
actividad de la aplicacion, sobre todo cuando se dan determinadas
circunstancias ( errores, modificaciones, etc).

la verdad es que no tengo mucha idea sobre el tema ni totalmente definido
como estructurar los datos guardados para facilitar la recuperacion de
estos.

de momento una de mis practicas es algo asi

Open ThisWorkbook.FullName & ".txt" For Append As #1
Write #1,
Write #1, Format(dblAcceso, "dd/mm/yy hh:mm:ss"), Proceso, AcsPrj & ","
& AcsLibro & "," & AcsHojas, Lector, NroInc
Close #1

donde dblAcceso seria el momento en que se produce la incidencia, y el
resto una serie de variables con los datos que me interesa recuperar

el tema esta en como recuperar la/las ultima/s lineas introducidas y/o
como buscar en base a un criterio ( pej. que dblAcceso sea
anterior/posterior a determinada fecha)

supongo que una vez 'obtenidos' los datos no sera dificil cargarlo en un
rango ¿y en un listbox directamente?? la idea (inicial) seria realizar la
busqueda desde un userform y cargar los datos en algun control para su
revision/utilizacion

bueno, lo cierto es que apenas he practicado con la 'lectura' de txt y que
mis busquedas no acaban de aclararme a este respecto

si podeis echarme una mano os lo agradezco

un saludo y hasta pronto
Ivan

PD: estoy totalmentee abierto a cualquier sugerencia/modificacion sobre la
introduccion de los datos en el txt, si esto facilita su lectura posterior



Hola Iván,

Para trabajar con archivos de texto te recomiendo este artículo de Enrique
Martínez 'SoftJaén', si no lo habías leído ya.

http://www.mvp-access.com/softjaen/...t_isam.htm

También creo que te será de utilidad este otro curso sobretodo los capítulos
18 y 19 (el 17 también).
http://www.olaz.net/descargas/acces...tregas.htm

Un saludo,
Juan
Respuesta Responder a este mensaje
#2 Ivan
15/06/2007 - 10:55 | Informe spam
hola Juan

muchas gracias, voy a echarle un ojo

un saludo
Ivan
Respuesta Responder a este mensaje
#3 Ivan
15/06/2007 - 16:48 | Informe spam
hola de nuevo, Juan

he estado echando un ojo a los enlaces, y, aunque he añadido el de SoftJaen (creo que ya tengo unos cuantos enlaces
hacia el) a mis marcadores para irlo desmenuzando poco a poco, al tratarse sobre todo de trabajar con Ado/Dao o
similares, que practcamente no conzco, de momento me he decantado por el manual de E. Olaz, que por otro lado tengo
impreso y encuadernado (y por lo que se ve medio olvidado) hasta la entrega 20 (aprovechare para bajarme las ultimas
entregas), par centrarme en Input o similar.

supongo que una de las claves esta en la funcion EOF, asi que alla voy...

lo unico consultarte una cosa (aunque con un poco de vergüenza): ¿sabes donde podria encontrar un definicion en terminos
basicos/sencillos del significado/diferencia entre archivos secuenciales/bynarios etc?

confieso que uno de mis principales problemas es el retorcimiento con que suelo interpretar el lenguage
tecnico/informatico, de ahi lo de basico/sencillo

bueno, en cualquier caso muchas gracias de nuevo y hasta pronto
Ivan
Respuesta Responder a este mensaje
#4 Juan M
18/06/2007 - 08:38 | Informe spam
Hola Iván,

Creo que tienes un lío con lo archivos. Todos los archivos son binarios, se
hace una división cuando los archivos están formateados como texto plano y
se dice que son de texto.
http://es.wikipedia.org/wiki/Archivo_binario
Lo de secuenciales se refiere al tipo de acceso, normalmente secuencial en
contraposición al acceso aleatorio (ya casi no se usa)
El acceso secuencial se hace línea por línea, caracter a caracter o registro
a registro, de principio a fin.
Con el acceso aleatorio podrías indicar de donde quieres extraer datos, pero
a menos que tu hayas creado el archivo normalmente no sabrás ni por donde
empezar. Revisa la ayuda sobre Put y Get.

Espero no haber metido la pata con estas 'definiciones'

Respecto a lo de leer el archivo de texto, el problema es que debes leerlo
enterito y luego tratar cada fila.

Te paso un ejemplo de como 'dar la vuelta' al archivo. El resultado en la
ventana inmediato.

Un saludo,
Juan

Inicio Código
Sub test()
Dim arrFileLines()
Dim i As Long
Dim l As Long
Dim lngFile As Long
Dim Archivo As String

Archivo = "C:\temp\Script\Prueba2.txt"

lngFile = FreeFile(1)
i = 0
Open Archivo For Input As #lngFile
Debug.Print "De principio a fin"
Do Until EOF(lngFile)
ReDim Preserve arrFileLines(i)
Line Input #lngFile, arrFileLines(i)
Debug.Print arrFileLines(i)
i = i + 1
Loop
Close #1

Debug.Print "De fin a principio"
For l = UBound(arrFileLines) To LBound(arrFileLines) Step -1
Debug.Print arrFileLines(l)
Next

End Sub

Fin Código

"Ivan" escribió en el mensaje
hola de nuevo, Juan

he estado echando un ojo a los enlaces, y, aunque he añadido el de
SoftJaen (creo que ya tengo unos cuantos enlaces hacia el) a mis
marcadores para irlo desmenuzando poco a poco, al tratarse sobre todo de
trabajar con Ado/Dao o similares, que practcamente no conzco, de momento
me he decantado por el manual de E. Olaz, que por otro lado tengo impreso
y encuadernado (y por lo que se ve medio olvidado) hasta la entrega 20
(aprovechare para bajarme las ultimas entregas), par centrarme en Input o
similar.

supongo que una de las claves esta en la funcion EOF, asi que alla voy...

lo unico consultarte una cosa (aunque con un poco de vergüenza): ¿sabes
donde podria encontrar un definicion en terminos basicos/sencillos del
significado/diferencia entre archivos secuenciales/bynarios etc?

confieso que uno de mis principales problemas es el retorcimiento con que
suelo interpretar el lenguage tecnico/informatico, de ahi lo de
basico/sencillo

bueno, en cualquier caso muchas gracias de nuevo y hasta pronto
Ivan

Respuesta Responder a este mensaje
#5 Ivan
18/06/2007 - 11:22 | Informe spam
hola Juan, muchas gracias de nuevo

Creo que tienes un lío con lo archivos



me temo que mas de uno, y no solo con los archivos, sino con todo lo
que se refiere a la 'base' (por llamarlo de alguna manera) de la
informatica. Creo que he llegado un poco tarde a este mundo, y,
ademas, de golpe y porrazo, que se suele decir. Y uno de los
principales problemas que me encuentro (al menos para mi neurona) es
la gran cantidad de sobreentendidos que contienen la mayoria de los
textos de ayuda, cuya terminologia, aunque en muchos casos parezca
evidente, siempre me deja la mosca detras de la oreja.

por eso se agradecen aclaraciones como las tuyas, que ayudan a ir
descartando poco a poco algunas de esas dudas.

como no me cansare de repetir, para mi gusto, no hay mejor maestro que
las buenas gentes de estos foros. Muchas gracias de nuevo.

en cuanto al ej. esta tarde/noche me lio con el, pero creo intuir que
va a acabar de solucionarme el tema

lo dicho, muchas gracias y hasta pronto
Ivan
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida