En este post de programación en C te mostraré cómo leer un archivo de texto y llenar un arreglo a partir del mismo. Es decir, llenar un arreglo con el contenido de un archivo de texto.
El arreglo en cuestión será un arreglo de cadenas. Recuerda que un arreglo tiene un tamaño definido en tiempo de compilación, así que si quieres algo que crezca mientras haya memoria disponible puedes usar una pila dinámica.
Explicación del algoritmo
Lo que vamos a hacer es leer el archivo línea por línea, llevar un contador de las líneas para usarlo como índice para acceder al archivo, y en cada lectura de la línea, copiar usando memcpy
hacia el arreglo.
Finalmente vamos a imprimir el arreglo llenado a partir de un archivo. Todo esto usando C.
Leer archivo de texto y pasarlo a arreglo
Comenzamos declarando algunas constantes que definirán el máximo tamaño de la línea que se lee, así como la máxima longitud del arreglo. En este caso nuestro archivo tiene 20 líneas.
Después declaramos el arreglo que vamos a llenar a partir del archivo de texto, e intentamos abrir el archivo:
Luego copiamos el archivo de texto al arreglo. Agregamos la cadena al arreglo usando memcpy
en la línea 9.
Finalmente cerramos el archivo e imprimimos el arreglo. Obviamente podemos procesar el arreglo de cualquier manera, es decir, ordenarlo, guardarlo en otro archivo, etcétera.
Poniendo todo junto
El código completo para pasar el contenido de un archivo a un arreglo en C queda así:
También puedes leer más sobre C en mi blog.