Introducción a las operaciones de archivos C++

Introducción a las operaciones de archivos C++

Un archivo es una colección de datos almacenados en el sistema de archivos de una computadora. Los archivos pueden contener varios tipos de información, como texto, imágenes, audio y vídeo, etc. En C++, un archivo es un flujo de datos que se puede utilizar para leer o escribir datos. C ++ proporciona una serie de funciones de operación de archivos para leer, escribir, abrir, cerrar y otras operaciones en archivos.

En C++, los archivos se pueden dividir en archivos de texto y archivos binarios. La diferencia entre estos dos tipos de archivos es la forma en que almacenan datos:

Archivos de texto: los archivos de texto almacenan datos en caracteres, como caracteres ASCII o Unicode. Cada carácter ocupa un byte de espacio. Los archivos de texto se utilizan generalmente para almacenar información de texto, como código, archivos de configuración, documentos, etc.

Archivos binarios: los archivos binarios almacenan datos en bytes y cada elemento de datos puede tener cualquier longitud. Los archivos binarios se utilizan a menudo para almacenar información que no es texto, como imágenes, audio, vídeo, etc.

Los archivos de texto son archivos que contienen caracteres legibles; archivos como .txt y .csv suelen ser archivos de texto. Los archivos como imágenes, audio y vídeos son archivos binarios porque contienen datos binarios incrustados en ellos. Los archivos de imagen suelen incluir .bmp, .jpg, .png y otros formatos, los archivos de audio suelen incluir .wav, .mp3 y otros formatos, y los archivos de vídeo suelen incluir .mp4, .mov y otros formatos.

La ruta al archivo se puede representar como una cadena. Las rutas de los archivos pueden ser relativas o absolutas.

Las rutas relativas son rutas relativas al directorio de trabajo actual. El directorio de trabajo actual es la ruta predeterminada especificada por el sistema operativo al ejecutar un programa. Por ejemplo, si el directorio de trabajo actual es D:\Test\John y el archivo está ubicado en el subdirectorio Archivos de este directorio, puede usar una ruta relativa para representar la ruta del archivo: "Archivos/miarchivo.txt".

Una ruta absoluta es la ruta completa al archivo, incluido el nombre de la unidad (en sistemas Windows) o el símbolo del directorio raíz (en sistemas tipo Unix). Las rutas absolutas comienzan desde la raíz del sistema de archivos. Por ejemplo, en un sistema Windows, el archivo myfile.txt se encuentra en D:\Test\John\Files y puede utilizar una ruta absoluta para representar la ruta del archivo: "D:\Test\John\Files/myfile. TXT".

La siguiente es una introducción a las operaciones de archivos de uso común.

Pasos de operación de archivos C ++

☆ Pasos de operación del archivo en modo C

Introduzca los archivos de encabezado necesarios. Los archivos C deben usar la biblioteca <cstdio> (stdio.h). Introduzca el archivo de encabezado #include <cstdio> o #include <stdio.h> antes de iniciar el programa.

1. Abra el archivo: abra el archivo creando un puntero de archivo usando la función fopen().

Esta función requiere dos parámetros: nombre de archivo y modo de apertura.

2. Leer y escribir contenido del archivo:

Utilice la función fgetc() para leer un carácter de un archivo. Utilice la función fputc() para escribir un carácter en el archivo.

Utilice la función fgets() para leer una línea de cadena de un archivo. Utilice la función fputs() para escribir una cadena en un archivo.

esperar

3. Cierre el archivo: utilice la función fclose() para cerrar el archivo.

Además, cabe señalar que el proceso de operación del archivo puede encontrar algunas situaciones anormales, como fallas en la apertura del archivo, fallas en la lectura y escritura del archivo, etc., y es necesario realizar el procesamiento correspondiente para garantizar la corrección y solidez del programa. .

Por ejemplo:

#include <stdio.h>

int main() {  
    // 打开文件  
    FILE *file = fopen("example.txt", "r");  
    if (file == NULL) {  
        printf("无法打开文件\n");  
        return 0;  
    }

    // 写入文件  
    fputs("Hello, World!", file);

    // 读取文件  
    char buffer[256];  
    fgets(buffer, 256, file);  
    printf("%s", buffer);

    // 关闭文件  
    fclose(file);

    return 0;  
}

☆ Pasos de operación de archivos C ++

Introduzca los archivos de encabezado necesarios, incluidos los archivos de encabezado <iostream> y <fstream> antes de iniciar el programa.

En comparación con C, C++ proporciona formas más convenientes de abrir y manipular archivos.

1. Abrir archivos: C++ proporciona una forma más rica de abrir archivos que C. Además de ser compatible con el modo C, la función open() de <iostream> se utiliza para abrir archivos, esta función requiere dos parámetros: nombre de archivo y modo de apertura. Esta función requiere dos parámetros: nombre de archivo y modo de apertura. También puede utilizar clases de flujo de archivos para abrir archivos, como std::ifstream file(); 

2. Leer y escribir contenido del archivo:

Utilice la función get() para leer un carácter del archivo. Utilice la función put() para escribir un carácter en el archivo.

Utilice la función getline() para leer una línea de cadena de un archivo. Escriba una cadena en un archivo usando el operador << o la función write().

esperar

3. Cierre el archivo: utilice la función close() para cerrar el archivo.

Además, cabe señalar que el proceso de operación del archivo puede encontrar algunas situaciones anormales, como fallas en la apertura del archivo, fallas en la lectura y escritura del archivo, etc., y es necesario realizar el procesamiento correspondiente para garantizar la corrección y solidez del programa. .

Por ejemplo:

#include <iostream>
#include <fstream>
using namespace std;

int main() {
    const char* filename = "example.txt"; // 文件名
    const char* mode = "w+"; // 打开文件的模式,这里是以读写方式打开

    // 创建并打开文件,检查是否成功打开
    ofstream out_file;
    out_file.open(filename, ios::out);
    if (!out_file.is_open()) {
        cerr << "文件打开失败" << endl;
        return -1;
    }

    // 写入文件
    const char* content = "Hello, World!";
    out_file << content;

    // 关闭文件
    out_file.close();

    // 打开文件,检查是否成功打开
    ifstream in_file;
    in_file.open(filename, ios::in);
    if (!in_file.is_open()) {
        cerr << "文件打开失败" << endl;
        return -1;
    }

    // 读取文件
    char buffer[1024];
    in_file.getline(buffer, sizeof(buffer));
    cout << buffer << endl;

    // 关闭文件
    in_file.close();

    return 0;
}

En el código anterior, use la clase de flujo de archivos para abrir el archivo:

#include <iostream>  
#include <fstream>
using namespace std;

int main() {  
    // 打开文件  
    ofstream file("example.txt", ios::in);  
    if (!file.is_open()) {  
        cerr << "无法打开文件" << endl;  
        return 1;  
    }

    // 写入文件  
    file.write("Hello, World!", 50);
    
    // 关闭文件  
    file.close();

    // 重新打开文件
    ifstream readfile("example.txt");
    if (!readfile.is_open()) {
        cerr << "无法打开文件" << endl;
        return 1;
    }

    // 读取文件
    char buffer[256];  
    readfile.read(buffer, 256);  
    cout << buffer << endl;

    // 关闭文件
    readfile.close();

    return 0;  
}

Información de operación de archivos

E/S de archivos C https://www.geeksforgeeks.org/basics-file-handling-c/

Archivos y transmisiones C++ https://www.tutorialspoint.com/cplusplus/cpp_files_streams.htm

 

Supongo que te gusta

Origin blog.csdn.net/cnds123/article/details/132491773
Recomendado
Clasificación