Foros del Web » Programando para Internet » PHP »

Leer archivo de texto por partes guardar y seguir leyendo

Estas en el tema de Leer archivo de texto por partes guardar y seguir leyendo en el foro de PHP en Foros del Web. Hola a todos, bueno lo que necesito hacer es lo siguiente tengo un archivo con datos de la siguiente manera Indetificador de inicio 01/01/2012 00:00:25 ...
  #1 (permalink)  
Antiguo 16/02/2012, 13:42
 
Fecha de Ingreso: enero-2012
Ubicación: Santiago
Mensajes: 32
Antigüedad: 12 años, 9 meses
Puntos: 0
Exclamación Leer archivo de texto por partes guardar y seguir leyendo

Hola a todos, bueno lo que necesito hacer es lo siguiente tengo un archivo con datos de la siguiente manera

Indetificador de inicio
01/01/2012 00:00:25 - palabra clave Dato 1
01/01/2012 00:00:25 - palabra clave dato 2
01/01/2012 00:00:25 - ..................
01/01/2012 00:00:25 - palabra clave dato 3
01/01/2012 00:00:25 - ..................
01/01/2012 00:03:01 - palabra clave dato4
01/01/2012 00:03:01 - palabra clave dato5
01/01/2012 00:04:25 - ..................
Indetificador de final

Indetificador de inicio
01/01/2012 00:00:25 - palabra clave Dato 1
01/01/2012 00:00:25 - palabra clave dato 2
01/01/2012 00:00:25 - ..................
01/01/2012 00:00:25 - ..................
01/01/2012 00:03:01 - palabra clave dato4
01/01/2012 00:03:01 - palabra clave dato5
01/01/2012 00:04:25 - ..................
Indetificador de final

y asi sucesivamente, lo que necesito es leer el archivo identificar los datos de cada bloque de datos, osea leer el primero guardar los datos y seguir con el 2do,

leer, guardar, e insertar en la base de datos lo puedo hacer sin ningun problema como todos son datos destintos buscaba la palabra clave y con la funcion subtr obtengo lo que necesito y lo guardo en un array para luego enviarlo a la base de datos, hasta ese momento todo bien.

El problema me ocurre cuando en algun bloque de datos, falta un dato, y en consecuencia de la manera que leo los datos no me quedaba en concordancia con los datos de su bloque, esto quiere decir, que si en un bloque falta un dato me ingresa el siguiente.

Por lo cual quisiera si me pueden ayudar en como identificar cada bloque guardar sus datos y si en un bloque no existe un dato dejarlo como null o vacio, y seguir con el siguiente bloque sucesivamente hasta terminar de leer el archivo.

E estado pensando muchas formas pero no logro leer el archivo por bloques espero me puedan ayudar
  #2 (permalink)  
Antiguo 16/02/2012, 13:48
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 16 años, 6 meses
Puntos: 528
Respuesta: Leer archivo de texto por partes guardar y seguir leyendo

Podrías haber continuado tu post anterior donde preguntabas lo mismo.

Si no pones nada de código, será difícil ayudarte.

Si cuando dices "falta un dato" te refieres a que falta una linea, si la cantidad de lineas por bloque debe ser constante y si hay alguna característica que pudiera identificar cada linea para saber si existe o no, sería posible asignar a una variable cada linea y las lineas faltantes quedar vacías.
  #3 (permalink)  
Antiguo 16/02/2012, 14:00
 
Fecha de Ingreso: enero-2012
Ubicación: Santiago
Mensajes: 32
Antigüedad: 12 años, 9 meses
Puntos: 0
Pregunta Respuesta: Leer archivo de texto por partes guardar y seguir leyendo

no quise continuar el anterior es que como lo cree hace unos dias y me confundi un poco creo disculpa, mira bueno, leo los datos de la siguiente manera


Código PHP:
$searchthis "Palabra Clave"
$matchesg= array();  
$handle = @fopen("$archivos""r"); 
if (
$handle
{ while (!
feof($handle)){ $buffer fgets($handle); 
if(
strpos($buffer$searchthis) !== FALSE$matchesg[] = $buffer; } fclose($handle); } //show results: 
$valor1 count($matchesg);
echo 
substr($matchesg[1], 0, -20); 
asi obtengo los datos que necesito, Buscando la palabra clave, cada bloque de texto tiene una palabra clave de la cual puedo buscar y obtener el dato que necesito, y lo que hice fue copiar y pegar este codigo tantas veces necesitaba buscar por dato y los guardaba, lo que me paso fue que al faltar un dato(cuando falta un dato es por que la linea no existe)

por lo tango obtengo

100 datos del [dato 1]
98 datos del [dato 2]

y al guardarlo en la base de datos no queda en concordancia con los demas si es que el faltante esta al medio y los demas datos suben.

nose si me entienden

Etiquetas: leyendo, partes, seguir
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:39.