Página 1 de 1

Analizar un fichero y almacenarlo en memoria

NotaPublicado: 2005-10-31 21:12 @925
por Statyk
Hola,

Quiero almacenar en un fichero de texto información, la intención es hacerlo más o menos en este formato:
Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
dato1 {
   variable1 = valor1;
   variable2 = valor2;
   variable3 = valor3;
   variable4 = valor4;
}

dato 2 {
   variable1 = valor5;
   variable2 = valor6;
   variable3 = valor7;
   variable4 = valor8;
}

(..)
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4

El fichero de texto puede tener muchas de entradas de este tipo... Luego estos datos quiero pasarlos a memoria y almacenarlos en una tabla, preferente en una matriz de este estilo para poder acceder a ellos fácilmente:
Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
       |---A----|----B---|---C----|---D----|
-------|--------|--------|--------|--------|
dato1  | valor1 | valor2 | valor3 | valor4 |
dato2  | valor5 | valor6 | valor7 | valor9 |
(..)
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4

¿Alguna idea de cómo analizar el fichero que almacena los datos? ¿Es buena idea almacenar los datos en una matriz bidimensional, alguna estructura más óptima para este formato? ¿Cómo se crearía una matriz de este estilo?

¡¡Muchas gracias!!

NotaPublicado: 2005-11-01 01:24 @100
por Perl user
La solución que requieres se denomina "Data Serialization" o "Data Marshalling", lo cual consiste prácticamente en representar datos en algún formato legible ( no siempre ) y de manera persistente.

Échale un vistazo al formato YAML y su correspondiente módulo de Perl YAML. Es una recomendación personal, de igual manera puedes guardar estructuras en diversos formatos, algo más nativo de Perl podría ser usando el módulo Storable, pero insisto, échale un vistazo primero a YAML.

Regards,

NotaPublicado: 2005-11-01 10:50 @493
por Statyk
Muchas gracias, Perl User,

Ya tengo algo de dónde empezar a tirar para comenzar con el proyecto... :)

Encontré un artículo que habías escrito que trata este y otros temas:

http://www.unixmonkeys.com/amnesiac/docs/tecweb.html

Saludos,