Fseek en C

Fseek en C
Como usuario diario de computadora, siempre estamos trabajando con archivos y carpetas. Estos archivos y carpetas son los imprescindibles en cualquier sistema operativo como Windows o Linux. Además de acceder a los archivos a través del sistema operativo, también podemos acceder a estos archivos y carpetas dentro de cualquier lenguaje de programación a través de la presentación. Aunque no es tan simple como usar los archivos y carpetas en los sistemas operativos, puede proporcionarnos una cantidad suficiente de información.

La función "Fseek" de "C" está diseñada para obtener una información sobre el rango específico de datos de texto dentro de cualquier tipo de archivo como el número total de caracteres, mostrar los datos de texto específicos y muchos más. Como hemos estado trabajando en la plataforma Linux, es necesario instalar el compilador C a través de la aplicación "línea de comandos". Por lo tanto, abra rápidamente su aplicación "terminal" e intente actualizar su Ubuntu 22.04 Sistema Linux primero. Use la utilidad "Apt" con los derechos "sudo" en la consulta "actualización" para actualizarla.

Después de actualizar todo el sistema, vamos a configurar el compilador "C" en nuestra máquina Linux. Es una necesidad de nuestros ejemplos de código porque, sin un compilador, no podremos ejecutar los códigos. Por lo tanto, utilizando la herramienta "Apt" una vez más, instalamos el compilador "GCC" para el idioma "C" utilizando la consulta "Instalar" que se muestra en la siguiente imagen:

Creemos un archivo de texto antes de crear un código C. Este archivo de texto se produce utilizando la consulta "touch" de Linux como se muestra en la siguiente ilustración. Después de esto, agregamos algún texto en el nuevo archivo. Cinco (5) líneas de datos de texto también se muestran en el shell a través de la instrucción "CAT".

Ejemplo 01:

Comenzamos esta primera ilustración de C para explicar cómo podemos usar la función Fseek para mover el cursor al punto específico del archivo y contar el número total de caracteres dentro de un rango específico. Por lo tanto, la consulta de "tacto" se usa nuevamente para crear un archivo con la extensión "C", I.mi. "Fseek.C". La consulta de la lista muestra este archivo recién producido dentro de la carpeta de inicio.

Para comenzar a codificar dentro del archivo C, abrimos este archivo en el editor NANO GNU del sistema Linux. Ahora, el archivo C debe comenzar con el "stdio.H "encabezado porque es imprescindible para la utilización de las declaraciones de entrada y salida de C. Después de incluir el encabezado estándar, utilizamos la función "principal". Usamos la función incorporada dentro de la función Main (), por lo que no es necesario agregar ninguna función definida por el usuario.

El objeto "Archivo" se usa para crear un descriptor de archivo de tipo de puntero "F". Este descriptor de archivo nos ayuda a acceder y modificar el archivo siempre que sea posible. Usamos la función "Fopen" de C para simplemente abrir el "Fseek.archivo txt "en modo de lectura utilizando el argumento" r ". La función fopen () devuelve algún valor al descriptor "F" que nos dice si el archivo se inicia con éxito o no. El descriptor de archivo "F" nos ayuda a realizar la búsqueda en un archivo de texto a través de la función "Fseek" colocando el puntero en el índice "0" hasta el final del archivo, i.mi. Opción "Seek_end".

La instrucción "C" "printf" hace uso de la función "ftell" con el descriptor de archivo "f" para decirnos el número total de caracteres en un archivo desde el índice 0 hasta el final.

#incluir
int main ()
Archivo *f;
F = fopen ("fseek.txt "," r ");
fseek (f, 0, Seek_end);
printf ("número total de caracteres: %ld \ n", ftell (f));
regresar 0;

Guardamos nuestro código y lo compilamos usando la instrucción del compilador "GCC" en el shell. Al ejecutar este código compilado, obtenemos "69" como la salida de los caracteres totales en un archivo.

Ejemplo 02:

En este ejemplo del programa C, veremos cómo podemos agregar los datos de texto a un archivo utilizando la ubicación específica a través de la función fseek (). Por lo tanto, utilizamos un pequeño código con muchas modificaciones. Comenzando al agregar la entrada y la salida y agregar el método Main (), inicializamos un descriptor de archivo de puntero usando el objeto "Archivo". Este descriptor toma su valor como el valor devuelto de la función "fopen ()" que intenta abrir un archivo en modo de escritura.

La función "fputs" de C se usa aquí para agregar algunos datos a un archivo. Y la función fseek () establece la ubicación de un cursor a 0 índice al principio. Nuevamente, usando la función fputs (), agregamos un texto al inicio de un archivo a través del descriptor "F". La función fclose () utiliza el descriptor de archivo "f" para cerrar el archivo de texto después de escribir en él. Guardamos este código antes de ejecutarlo.

#incluir
int main ()
Archivo *f;
F = fopen ("fseek.txt "," w+");
futs ("End Middle!", f);
fseek (f, 0, Seek_set);
fputs ("inicio", f);
fclose (f);
regresar 0;

Tras la compilación, no encontramos errores y lo ejecutamos con el "./a.Comando de ejecución de Linux "out". La ejecución no devolvió nada, pero hizo algunos cambios en el "Fseek.archivo txt ". La instrucción CAT muestra que el texto "Inicio" se agrega a la posición inicial de un texto "End Middle".

Después de esto, actualizamos el código una vez más y actualizamos la posición de un puntero para colocar en el archivo, I.mi. Índice de posición 6. El restante no se molesta por un solo cambio de palabra.

#incluir
int main ()
Archivo *f;
F = fopen ("fseek.txt "," w+");
futs ("End Middle!", f);
fseek (f, 6, Seek_set);
fputs ("inicio", f);
fclose (f);
regresar 0;

Cuando compilamos este código recientemente actualizado con el compilador "GCC" junto con ejecutarlo a través del "./a.Out "consulta, no devolvió nada, ya que ha realizado algunos cambios en el archivo de texto. Al mostrar los datos del "Fseek.Archivo TXT ", muestra que la palabra" inicio "se agrega al final de un archivo después del índice de posición especificado" 6 ".

Conclusión

Esta guía es una ventaja para los usuarios de C para comprender el uso de la función fseek () de C con mayor precisión con los ejemplos simples. Para esto, intentamos actualizar el sistema Linux y configurar el compilador C. Junto con eso, empleamos el ejemplo de C para usar la función fseek () para colocar el cursor en puntos específicos del archivo. También probamos las diferentes funciones como la función ftell () para mostrar los caracteres totales del archivo y la función fputs () para agregar los datos a un archivo.