FoxPro/Visual FoxPro - Problemas con fopen

   
Vista:

Problemas con fopen

Publicado por Jose Antonio (16 intervenciones) el 05/09/2008 00:49:36
Saludos amigos:
Tengo un problema muy grave en lo que se refiere una funcion del visual foxpro, o talvez sea de version, estoy utilizando la version 7 de lo que es el VFP.
Ahora explico el problema, tengo un archivo con informacion de un poco mas de 2.1 Gb de tamaño en formato texto, lo que hacia antes de que llegara a ese tamaño o se aumentara de tamaño de dicho archivo era usar la funcion "fopen" y seleccionar ciertos registros o lineas del archivo para ponerlo en una tabla "dbf", lo que sucede ahora es que no me reconoce el final del archivo osea la funcion "feof" al abrir el archivo me retorna el final del archivo sin haber recorrido ninguna linea dentro del texto. Luego obviando la funcion "feof" procedo a leer el archivo hasta llegar a un cierto punto casi al final del archivo la funcion "fgets" me retorna un error de insuficiencia de memoria.
No se como solucionarlo porque necesito leer la totalidad del archivo mencionado, no se si se puede solucionar el cambio de la version de mi vfp.
Gracias amigos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problemas con fopen

Publicado por enrique (1041 intervenciones) el 05/09/2008 21:43:11
Nunca tuve que habrir un archivo de tales dimenciones, igualmente creo que el tema esta en la memoria de tu equipo y en la virtual de disco ( o swap de disco), como cambiar la memoria puede ser algo costoso prueba cambiando el tamaño maximo del disco virtual a 3000 MB (iagual a 3GB). No creo que tenga que ver el VFP
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Mauricio

Problemas con fopen

Publicado por Mauricio (1368 intervenciones) el 06/09/2008 20:35:32
Comprueba si existe el archivo de texto y luego el codigo de retorno de FOPEN:
*
IF FILE('Texto.txt') && ¿Existe el archivo?
codigo_retorno = FOPEN('Texto.txt',12) && Si existe, abrir para lectura-escritura
ELSE
codigo_retorno = FCREATE('Texto.txt') && Si no, crearlo
ENDIF
IF codigo_retorno < 0 && Comprobar si hay error al abrir el archivo
WAIT 'Imposible abrir o crear archivo de resultados' WINDOW NOWAIT
ELSE && Si no hay error, escribir en archivo
=FWRITE(codigo_retorno, 'Se escribe la información de error')
ENDIF
=FCLOSE(codigo_retorno) && Cerrar archivo
Espero te ayude en tu problema!!!!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problemas con fopen

Publicado por Jose Antonio (16 intervenciones) el 06/09/2008 21:17:32
Hola, no tengo problemas al abrir el archivo, la funcion FOPEN lo abre con toda normalidad. Estaba revisando informacion sobre otros leguanjes de programación, me encontre con la sorpresa de que todas las funciones de apertura de archivos a bajo nivel solo llenan el buffer hasta 2GB de tamaño mas alla de ese tamaño ya lo toma como si se hubiese abierto un archivo vacio. En plataformas linux existe una manera de configurar ese problema; pero en windows no lo encuentro por ningun lado.
Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar