# data[].attributes.body
Un archivo es una colección de datos almacenados en disco que puede ser leído o modificado por un programa en C. Se utilizan para guardar información de forma permanente.

# data[].attributes.body
"r" – Lectura.

"w" – Escritura (sobrescribe si ya existe).

"a" – Añadir al final.

"rb", "wb", "ab" – Lo mismo, pero para archivos binarios.

# data[].attributes.body
Datos estructurados:

.csv (valores separados por comas)

.xml (datos jerárquicos)

.json (intercambio de datos)

Documentación:

.txt (notas simples)

.md (Markdown, como README.md)

.log (registros del sistema)

# data[].attributes.body
Escribe un programa en C que cree un archivo de texto llamado datos.txt. Utiliza la función fopen para abrir el archivo en modo escritura ("w" o "wt").

#include <stdio.h>

int main() {

// Abre el archivo en modo escritura ("w" o "wt")

FILE *archivo = fopen("datos.txt", "wt");

// Verifica si el archivo se abrió correctamente

if (archivo == NULL) {

perror("Error al crear el archivo");

return 1;

}

// Escribe una línea de texto en el archivo

fprintf(archivo, "Este es un archivo de texto creado con C.\n");

// Cierra el archivo

fclose(archivo);

printf("Archivo 'datos.txt' creado exitosamente.\n");

return 0;

}

# data[].attributes.body
Texto (text files): Almacenan caracteres legibles por humanos.

Binarios (binary files): Almacenan datos en formato binario, no legible directamente.

# data[].attributes.headline
Funciones principales para trabajar con archivos

# data[].attributes.subject
Funciones principales para trabajar con archivos

# data[].attributes.body
fopen() – Abre un archivo.

FILE fopen(const char filename, const char *mode);

fclose() – Cierra un archivo.

int fclose(FILE *stream);

fprintf() / fscanf() – Escribe/lee en archivos de texto.

fread() / fwrite() – Lee/escribe en archivos binarios.

fseek() – Mueve el puntero de posición en el archivo.

ftell() – Retorna la posición actual del puntero.

# data[].attributes.body
Es importante verificar si el archivo fue abierto correctamente:

FILE *file = fopen("datos.txt", "r");

if (file == NULL) {

perror("Error al abrir el archivo");

}

# data[].attributes.body
#include <stdio.h> // Faltaba incluir la cabecera correcta

int main() {

FILE *f = fopen("ejemplo.txt", "w"); // Abre el archivo en modo escritura

if (f != NULL) {

fprintf(f, "Hola, archivo!\n"); // Escribe en el archivo

fclose(f); // Cierra el archivo

} else {

printf("No se pudo abrir el archivo.\n"); // Mensaje en caso de error

}

return 0;

}

Crea (o sobrescribe) un archivo llamado ejemplo.txt y escribe dentro:

Hola, archivo!

Si no puede abrir el archivo, muestra un mensaje de error.

# data[].attributes.body
Este código en C crea un archivo llamado "datos.txt" en el mismo directorio donde se ejecuta el programa y escribe la línea de texto "Este es un archivo de texto creado con C." dentro de ese archivo. Después de escribir, cierra el archivo y muestra un mensaje de éxito en la consola

fopen("datos.txt", "wt"): abre el archivo para escribir en texto. Si no existe, lo crea. Si ya existe, lo sobrescribe.

fprintf(): escribe texto en el archivo.

fclose(): cierra el archivo correctamente

# data[].attributes.body
#include <stdio.h>

int main() {

char linea[256]; // Buffer para almacenar cada línea del archivo

// Abrir el archivo en modo lectura

FILE *archivo = fopen("datos.txt", "rt");

// Verificar si el archivo se abrió correctamente

if (archivo == NULL) {

perror("Error al abrir el archivo para lectura");

return 1;

}

// Leer línea por línea usando fgets y mostrar en pantalla

while (fgets(linea, sizeof(linea), archivo)) {

printf("%s", linea);

}

// Cerrar el archivo

fclose(archivo);

return 0;

}

# data[].attributes.body
fopen("datos.txt", "rt"): abre el archivo para lectura en modo texto.

fgets(linea, sizeof(linea), archivo): lee una línea completa del archivo y la guarda en linea.

printf("%s", linea): muestra cada línea en la consola.

fclose(): cierra el archivo al finalizar.

# data[].attributes.headline
¿Cuál es la diferencia entre archivos de texto y binarios?

# data[].attributes.subject
¿Cuál es la diferencia entre archivos de texto y binarios?

# data[].attributes.body
📄 Archivos de texto

Almacenan datos como caracteres legibles (letras, números, símbolos).

Puedes abrirlos con un editor como Notepad.

Ejemplo: datos.txt, config.ini

💾 Archivos binarios

Almacenan datos en su formato original (binario).

No son legibles directamente.

Son más eficientes para guardar estructuras complejas o imágenes.

Ejemplo: imagen.jpg, datos.bin

# data[].attributes.headline
¿Por qué es importante cerrar un archivo después de usarlo?

# data[].attributes.subject
¿Por qué es importante cerrar un archivo después de usarlo?

# data[].attributes.body
Cerrar un archivo con fclose() es esencial porque:

Libera los recursos del sistema (memoria, acceso al disco).

Asegura que todos los datos se hayan escrito correctamente en el archivo.

Evita errores y pérdida de información.

Permite que otros programas accedan al archivo sin problemas

# data[].attributes.headline
¿Qué función se utiliza para abrir un archivo en C?

# data[].attributes.subject
¿Qué función se utiliza para abrir un archivo en C?

# data[].attributes.body
FILE fopen(const char nombre_archivo, const char *modo);

Se usa para abrir archivos en diferentes modos: lectura ("r"), escritura ("w"), agregar ("a"), entre otros.

Devuelve un puntero al archivo si fue exitoso, o NULL si hubo un error.

Ejemplo:

FILE *archivo = fopen("datos.txt", "r");

# data[].attributes.body
chatgpt.com

# data[].attributes.attachment_link.title
Manejo de Archivos en C [Parte 1] {fopen,fclose, fprintf,fscanf }

# data[].attributes.wish_content.attachment_props.question
¿Conoces la diferencia entre archivos de texto y archivos binarios?

# data[].attributes.wish_content.attachment_props.question
¿Cuál de los siguientes tipos de archivo usas más frecuentemente?

# data[].attributes.wish_content.attachment_props.question
¿Te gustaría aprender más sobre cómo manipular archivos en C?

# data[].attributes.wish_content.attachment_props.question
¿Qué tema te gustaría explorar más en profundidad?

# data[].attributes.wish_content.attachment_props.poll_choices[].choice_text
Manejo de errores al trabajar con archivos

# data[].attributes.headline
BENEMERITA UNIVERSIDAD AUTÓNOMA DE PUEBLA

# data[].attributes.subject
BENEMERITA UNIVERSIDAD AUTÓNOMA DE PUEBLA

# data[].attributes.body
Curso: Programación Básica

Alumno: Christian Bryan Tlachi Michaca 202461398

Alumno: Diego Merino Gallardo 202470042

Docente: Elvia Ríos Gonzales

NRC: 45377

# data[].attributes.body
DIEGO MERINO GALLARDO Y CHRISTIAN BRYAN TLACHI MICHACA