Tabla de contenido
Operaciones de lectura y escritura en archivos.
Algunas otras funciones de entrada y salida
Cuando abrimos la carpeta donde está instalado el software en la computadora, encontraremos que tiene muchos otros archivos además del programa ejecutable, y es por eso que estos software pueden guardar sus datos de uso, mientras que los programas que escribimos nosotros mismos no pueden. guardar datos. Este artículo presentará cómo utilizar el lenguaje C para manipular archivos.
Los archivos se dividen en archivos de programa y archivos de datos y operamos principalmente con archivos de datos.
Usando archivos, podemos almacenar datos directamente en el disco duro de la computadora, logrando la persistencia de los datos. Para utilizar un archivo, primero se debe abrir el archivo. A continuación se muestra nuestra primera función fopen.
abrir
ARCHIVO * fopen (const char * nombre de archivo, const char * modo);
La función de esta función es abrir el archivo especificado en el modo que especificamos.
El valor de retorno es un puntero al área de información del archivo, que puede entenderse simplemente como un puntero al archivo .
nombre de archivo: el primer parámetro requiere la dirección y el nombre del archivo que pasamos (incluido el sufijo del archivo);
Se puede pasar la posición relativa.
int main()
{
//这里的"data.txt"表示的是在当前程序所在的文件夹里面寻找名为data后缀为.txt的文件
FILE* p = fopen("data.txt", "r");
//这里的"..\\data.txt"表示的是在当前程序所在的文件夹的上一级文件夹里面寻找名为data后缀为.txt的文件;..\\表示上一级文件夹.\\表示当前文件夹
FILE* pf = fopen("..\\data.txt", "r");
fcloce(p);
fcloce(pf);
p = NULL;
pf = NULL;
return 0;
}
También se puede pasar la ubicación absoluta.
FILE* p = fopen("D:\\c&cpp\\c\\data.txt", "w");
fclose(p);
p = NULL;
modo: El segundo parámetro requiere que pasemos en qué modo necesitamos que se abra este archivo.
Cómo utilizar el archivo | significado | Si el archivo especificado no existe |
---|---|---|
"r" (solo lectura) | Para ingresar datos, abra un archivo de texto existente | ir mal |
"w" (sólo escritura) | Para generar datos, abra un archivo de texto | crear un nuevo archivo |
“a” (añadir) | Agregar datos al final del archivo de texto | crear un nuevo archivo |
"rb" (solo lectura) | Para ingresar datos, abra un archivo binario | ir mal |
"wb" (sólo escritura) | Para generar datos, abra un archivo binario | crear un nuevo archivo |
“ab” (añadir) | agregar datos al final de un archivo binario | crear un nuevo archivo |
"r+" (leer y escribir) | Abrir un archivo de texto para leer y escribir | ir mal |
"w+" (leer y escribir) | Crear un nuevo archivo para lectura y escritura. | crear un nuevo archivo |
"a+" (leer y escribir) | abrir un archivo | Leer y escribir al final del archivo para crear un archivo nuevo. |
"rb+" (lectura y escritura) | Abrir un archivo binario para leer y escribir. | ir mal |
"wb+" (lectura y escritura) | Crea un nuevo archivo binario para lectura y escritura. | crear un nuevo archivo |
"ab+" (lectura y escritura) | Abra un archivo binario para leer y escribir al final del archivo. | crear un nuevo archivo |
Ahora que hemos aprendido cómo abrir un archivo, en realidad es lo mismo que el desarrollo de memoria dinámica. El archivo que abrimos debe cerrarse una vez que hayamos terminado y la variable del puntero del archivo debe estar vacía para evitar que se convierta en un puntero salvaje y se vaya. para nuestro programa Peligros ocultos. La siguiente es una introducción a la función de cierre de archivos: fclose
cerrar
int fclose (ARCHIVO * secuencia);
Su función es cerrar el archivo abierto.
flujo: es una variable de puntero de archivo
Valor de retorno: si se cierra correctamente, devuelve 0 ; si falla, devuelve EOF
Si queremos leer y escribir archivos, necesitamos fgetc, fputc.
Operaciones de lectura y escritura en archivos.
fgetc
int fgetc (ARCHIVO * secuencia);
Esta es una función para leer un archivo. Lee un carácter del archivo especificado y devuelve su valor en código ASCII. Si la lectura falla, devuelve EOF.
fputc
int fputc (carácter int, ARCHIVO * flujo);
La función función es escribir un carácter en el archivo.
carácter: el código ASCII del carácter a escribir;
secuencia: el puntero del archivo que se va a escribir;
Devuelve EOF si falla la escritura.
Algunas otras funciones de entrada y salida
Función | Nombre de la función | aplicar para |
---|---|---|
función de entrada de caracteres | fgetc | todos los flujos de entrada |
función de salida de caracteres | fputc | todos los flujos de salida |
función de entrada de línea de texto | fgets | todos los flujos de entrada |
función de salida de línea de texto | salidas | todos los flujos de salida |
función de entrada de formato | fscaf | todos los flujos de entrada |
función de salida de formato | fprintf | todos los flujos de salida |
entrada binaria | miedo | documento |
salida binaria | escribir | documento |