From 913efb475bca8a98439b5926a0df57e494df105e Mon Sep 17 00:00:00 2001 From: Horacio Daniel Ros Date: Thu, 12 Nov 2026 11:27:34 -0300 Subject: [PATCH] ejercicio de argchivos --- c/files/files2/filecpy | Bin 0 -> 51344 bytes c/files/files2/horacio.txt | 3 + c/files/files2/main.c | 44 +++++++++++++ c/files/files2/prueba.txt | 3 + c/files/files3/assets/BocaJuniors.ppm | Bin 0 -> 222015 bytes c/files/files3/main.c | 85 ++++++++++++++++++++++++++ c/files/files3/ppdviewer | Bin 0 -> 58784 bytes 7 files changed, 135 insertions(+) create mode 100755 c/files/files2/filecpy create mode 100644 c/files/files2/horacio.txt create mode 100644 c/files/files2/main.c create mode 100644 c/files/files2/prueba.txt create mode 100644 c/files/files3/assets/BocaJuniors.ppm create mode 100644 c/files/files3/main.c create mode 100755 c/files/files3/ppdviewer diff --git a/c/files/files2/filecpy b/c/files/files2/filecpy new file mode 100755 index 0000000000000000000000000000000000000000..3463284ba65a5a5bb55cedbe662e7eef020a6af4 GIT binary patch literal 51344 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 AHvj+t literal 0 HcmV?d00001 diff --git a/c/files/files2/horacio.txt b/c/files/files2/horacio.txt new file mode 100644 index 0000000..1af9bf5 --- /dev/null +++ b/c/files/files2/horacio.txt @@ -0,0 +1,3 @@ +ESTE ES UN ARCHIVO +DE PRUEBAS DONDE VAMOS A EVALUAR COMO +SE COPIA ESTE CORREO HORACIODRS@GMAIL.COM diff --git a/c/files/files2/main.c b/c/files/files2/main.c new file mode 100644 index 0000000..116da79 --- /dev/null +++ b/c/files/files2/main.c @@ -0,0 +1,44 @@ +#include +#include +#include + +int main(int argc, char *argv[]) { + char *src = "src-test.txt"; + char *dst = "dst-test.txt"; + + if (argc == 3) { + src = strdup(argv[1]); + dst = strdup(argv[2]); + } else { + fprintf(stderr, "Argumentos invalidos.\n"); + return 1; + } + + FILE *fpsrc, *fpdst; + + fpsrc = fopen(src, "r"); + + if (fpsrc == NULL) { + perror("fopen"); + return 1; + } + + fpdst = fopen(dst, "w"); + + if (fpdst == NULL) { + perror("fopen"); + return 1; + } + + int c; + while ((c = fgetc(fpsrc)) && c != EOF) { + fputc(toupper(c), fpdst); + } + + fclose(fpsrc); + fclose(fpdst); + + printf("Archivo duplicado en mayusculas con exito en: %s\n", dst); + + return 0; +} diff --git a/c/files/files2/prueba.txt b/c/files/files2/prueba.txt new file mode 100644 index 0000000..48e9649 --- /dev/null +++ b/c/files/files2/prueba.txt @@ -0,0 +1,3 @@ +Este es un archivo +de pruebas donde vamos a evaluar como +se copia este correo horaciodrs@gmail.com diff --git a/c/files/files3/assets/BocaJuniors.ppm b/c/files/files3/assets/BocaJuniors.ppm new file mode 100644 index 0000000000000000000000000000000000000000..0bb539b792e137648e87b87183b1fbbfbc95f38c GIT binary patch literal 222015 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 J6v%f9{C}IW9#jAT literal 0 HcmV?d00001 diff --git a/c/files/files3/main.c b/c/files/files3/main.c new file mode 100644 index 0000000..ef5102e --- /dev/null +++ b/c/files/files3/main.c @@ -0,0 +1,85 @@ +#include +#include +#include +#include + +int main(int argc, char *argv[]) { + if (argc < 2) { + fprintf(stderr, "Argumentos invalidos\n"); + return 1; + } + + char *fname; + + fname = strdup(argv[1]); + + if (fname == NULL) { + perror("strdup"); + return 1; + } + + FILE *pfile = fopen(fname, "rb"); + + if (pfile == NULL) { + perror("fopen"); + fclose(pfile); + return 1; + } + + uint8_t *header = NULL; + + header = malloc(sizeof(uint8_t) * 3); + + printf("El sizeof de header es: %d\n", (int)sizeof(header)); + + if (fread(header, sizeof(uint8_t) * 2, 1, pfile) == 0) { + perror("fread"); + fclose(pfile); + return 1; + } + + header[3] = '\0'; + + int w, h, s; + + if (fscanf(pfile, " %d %d %d", &w, &h, &s) != 3) { + fprintf(stderr, "Error leyendo las caracteristicas de la imagen.\n"); + fclose(pfile); + return 1; + } + + fprintf(stdout, "Header readed: %s\n", (unsigned char *)header); + fprintf(stdout, + "Las dimensiones son %dx%d pixeles y una escala maxima de color de " + "%d\n", + w, h, s); + + // consumo un caracter mas y queda listo para leer los datos de los pixeles. + fgetc(pfile); + + unsigned char *data = NULL; + unsigned long pixel_count = w * h; + + data = malloc(sizeof(data) * pixel_count * 3); + + if (data == NULL) { + perror("malloc"); + fclose(pfile); + return 1; + } + + unsigned long readed = + fread(data, sizeof(unsigned char) * 3, pixel_count, pfile); + + fprintf(stdout, "%zu pixeles leidos de %zu\n", readed, pixel_count); + + if (readed != pixel_count) { + fprintf(stderr, "Error leyendo datos del archivo\n"); + free(data); + fclose(pfile); + } + + free(data); + fclose(pfile); + return 0; +} diff --git a/c/files/files3/ppdviewer b/c/files/files3/ppdviewer new file mode 100755 index 0000000000000000000000000000000000000000..727d431841820708723e26d5b2a9ecf33d9316e8 GIT binary patch literal 58784 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 literal 0 HcmV?d00001