Hola y bienvenido de nuevo.
En esta conferencia, quiero brindar una demostración de nuestro
primer desafío para leer de un archivo.
Vamos a contar el número de líneas dentro de un archivo usando fgetc.
Así que abramos los bloques de código, y creemos nuestro proyecto.
Aquí, solo vamos a decir nuevo
proyecto, y será una alineación básica de lectura.
Diga, seleccione la aplicación de la consola c, y nombraremos este número básico o contando
de líneas cómo sobre contar el número de líneas.
Y entonces esto va a crear nuestro principal. c que es bueno.
Incluso antes de que comencemos esta aplicación sin embargo, queremos crear nuestro archivo que
contenga algo de texto.
Como no estamos escribiendo, solo estamos leyendo en el número de líneas.
Entonces tienes que saber donde guardaste tu proyecto.
Estoy guardando mis proyectos adentro de mi directorio de descargas.
Y cuando creas un nuevo proyecto dentro de su directorio de descargas, va
al nombre de ese proyecto.
El nombre de mi proyecto es contar el número de líneas.
Así que dentro de cuenta el número de líneas, tengo mi main. c archivo.
Puedo crear mi archivo justo en este directorio.
Así que voy a la derecha haga clic dentro del directorio y
voy a decir nuevo y estoy va a crear un archivo de texto.
Este es un nuevo documento de texto, y va a ser una prueba. texto.
Lo voy a abrir.
Puedes abrirte en cualquier editor, esto es wordpad.
Se va a poner algunas líneas, hola.
Esto estará probando para contabilidad, está bien, un, solo un montón de líneas y
luego quiero guardar eso y cerrarlo.
Ahora que he creado mi archivo, puedo realmente empiece a implementar algo.
Lo primero que quiero hacer es que quiero crear una
variable constante para el nombre del archivo.
Así que solo usaré define.
Esto va a representar mi nombre de archivo.
Solo voy a decir el nombre del archivo en total. mayúsculas, y esto será
igual a lo que acabo de nombrar, que de nuevo es prueba. texto, así que prueba. texto.
Y todo mi código va para ser mi función principal.
Quiero crear mi puntero de archivo.
Recuerde, para crear un puntero de archivo, solo usa ARCHIVO en mayúsculas, y luego dice
estrella y luego puede decir fp.
Y yo voy a inicializar eso a nulo.
Siempre que hagas lectura de archivos y escribiendo, debe asegurarse de
incluir lib estándar. h.
También voy a crear un single personaje que se va a utilizar.
Solo voy a decir char, y luego voy a crear un
contador para todas mis líneas.
Voy a decir que las líneas int cuentan.
Y voy a inicializar eso a 0.
Lo primero que debe hacer cuando haces cualquier tipo de
lectura de archivos, tienes que abrirlo.
Entonces la función f open es va a devolver un puntero de archivo.
Así que quiero asignar eso a mi fp variable y quiero decir
f open y el nombre del archivo El nombre que ya definí es un
nombre de archivo constante.
Y quiero abrirme para leer y leyendo solo, así que solo digo r.
Así que aquí quiero hacer fopen con mi file name como mi constante y luego r entre
comillas dobles ese es nuestro modo.
Solo quiero leer.
No quiero escribir.
Si hice un r plus, yo escribiría también.
Antes de usar el puntero, el puntero representa el archivo.
Quiero asegurarme de que el puntero no es igual a nulo, así
que quiero hacer una f.
Quiero decir que fp es igual a nulo.
Entonces, si es igual a nulo, solo desea mostrar un error a cambio.
Entonces quiero hacer algo como El archivo printf no existe, lo que sea que
quieras hacer.
Y esto va a ser entonces.
Solo vamos a querer volver un 1 negativo de nuestra función.
Después de abrir el archivo, ahora puede empezar a leer
caracteres, por lo que podemos escribir un bucle while y queremos decir mientras nuestro carácter, que
es un carácter es igual a fgetc.
Fgetc está leyendo un solo carácter.
Pasamos nuestro puntero de archivo y básicamente queremos decir que queremos
leer caracteres hasta que veamos un eof.
Así decimos hasta que no sea igual a eof.
Entonces vamos a saltar de nuestro bucle, algo como esto.
Entonces vamos a leer en caracteres. hasta llegar al final del archivo.
Mientras nuestro personaje no sea un salto de línea, solo queremos incrementar cuando vemos un
salto de línea.
Entonces vamos a decir si nuestro personaje es igual a un salto de línea, entonces básicamente queremos
incrementar nuestro contador.
Solo queremos decir que las líneas cuentan más además, eso va a contar nuestras líneas.
Y luego saltamos del bucle cuando llegamos al final del archivo.
Pero solo recomendamos nuestro cuenta si obtenemos un avance de línea.
La última cosa que siempre quieres hacer una vez que haya terminado de leer su escritura,
desea cerrar su archivo.
Entonces quieres decir fclose y luego pase el puntero del archivo.
Y luego también querríamos establecer nuestro puntero de archivo es igual a nulo.
Y luego podemos imprimir el número de líneas que ejecutamos.
Entonces podemos decir printf total number de líneas r porcentaje d barra invertida ny luego podemos poner el
recuento de líneas.
Y luego regresa de el principal, así como así.
De nuevo, para repasar este código, crear nuestro puntero de
archivo establecerlo en nulo crear un carácter y un local variable para contar las líneas.
Abrimos nuestro archivo en la línea 12.
Lo abrimos en modo de solo lectura.
Nos aseguramos de que no sea nulo y luego hacemos nuestro ciclo while para leer
en cada carácter hasta estamos al final del archivo.
Cada vez que vemos un avance de línea, incrementamos ese contador.
Y luego cerramos nuestro archivo y establecemos nuestro puntero en nulo.
Y luego imprimimos el número de líneas.
Sigamos adelante y construyamos esto.
Y tenemos una línea extra alimentar, queremos asegurarnos.
Así que quiero asegurarme de que no olvídate de la coma en nuestro printf.
Y ahora ejecutamos esto, va a leer de nuestro archivo que creamos
y decirnos cuántas líneas tenemos.
Entonces dice número total de líneas son seis.
Si abrimos nuestro archivo de texto, deberíamos observe que hay seis líneas, una, dos,
tres, cuatro, cinco, seis.
En realidad, hay siete.
Entonces tendríamos que incrementar el el último hasta que obtengamos el eof.
Así que aquí hay un pequeño error donde solo decimos porque esto está haciendo nuestro
último avance de línea antes de llegar al final del archivo.
Entonces querrías tener este sería uno más y luego lo ejecutaríamos y realmente
funcionaría.
Entonces, en este caso, agregue un par de líneas.
Y en este caso, deberíamos tener una, dos, tres, cuatro, cinco,
seis, siete, ocho, nueve líneas.
Cerramos el archivo.
Lo ejecutamos de nuevo, compilamos y deberíamos obtener nueve.
En este caso obtenemos 9.
Así que guardaré este código fuente.
Puedes descargarlo.
Estos son los conceptos básicos de la lectura. datos de un archivo usando fgetc.
Tu tambien quieres convertirte familiarizado con fgets.
Y luego para formatear la salida, puede usar fscanf para leer en la salida formateada.
Espero que esto haya sido útil. Gracias.