Introduction aux opérations sur les fichiers C++

Introduction aux opérations sur les fichiers C++

Un fichier fait référence à une collection de données stockées dans le système de fichiers d'un ordinateur. Les fichiers peuvent contenir différents types d'informations, telles que du texte, des images, des vidéos audio, etc. En C++, un fichier est un flux de données qui peut être utilisé pour lire ou écrire des données. C++ fournit une série de fonctions d'opération de fichiers pour la lecture, l'écriture, l'ouverture, la fermeture et d'autres opérations sur les fichiers.

En C++, les fichiers peuvent être divisés en fichiers texte et fichiers binaires. La différence entre ces deux types de fichiers réside dans la manière dont ils stockent les données :

Fichiers texte : les fichiers texte stockent les données sous forme de caractères, tels que les caractères ASCII ou Unicode. Chaque caractère occupe un octet d'espace. Les fichiers texte sont généralement utilisés pour stocker des informations textuelles, telles que du code, des fichiers de configuration, des documents, etc.

Fichiers binaires : les fichiers binaires stockent les données en octets et chaque élément de données peut avoir n'importe quelle longueur. Les fichiers binaires sont souvent utilisés pour stocker des informations non textuelles telles que des images, du son, des vidéos, etc.

Les fichiers texte sont des fichiers contenant des caractères lisibles, les fichiers tels que .txt et .csv sont généralement des fichiers texte. Les fichiers tels que les images, l'audio et les vidéos sont des fichiers binaires car ils contiennent des données binaires intégrées. Les fichiers image incluent généralement .bmp, .jpg, .png et d'autres formats, les fichiers audio incluent généralement .wav, .mp3 et d'autres formats, et les fichiers vidéo incluent généralement .mp4, .mov et d'autres formats.

Le chemin d'accès au fichier peut être représenté sous forme de chaîne. Les chemins de fichiers peuvent être relatifs ou absolus.

Les chemins relatifs sont des chemins relatifs au répertoire de travail actuel. Le répertoire de travail actuel est le chemin par défaut spécifié par le système d'exploitation lors de l'exécution d'un programme. Par exemple, si le répertoire de travail actuel est D:\Test\John et que le fichier se trouve dans le sous-répertoire Files de ce répertoire, vous pouvez utiliser un chemin relatif pour représenter le chemin du fichier : "Files/myfile.txt".

Un chemin absolu est le chemin complet du fichier, y compris le nom du lecteur (dans les systèmes Windows) ou le symbole du répertoire racine (dans les systèmes de type Unix). Les chemins absolus partent de la racine du système de fichiers. Par exemple, dans un système Windows, le fichier monfichier.txt se trouve dans D:\Test\John\Files, et vous pouvez utiliser un chemin absolu pour représenter le chemin du fichier : "D:\Test\John\Files/myfile. SMS".

Ce qui suit est une introduction aux opérations sur les fichiers couramment utilisées.

Étapes de fonctionnement du fichier C++

☆ Étapes de fonctionnement du fichier en mode C

Introduisez les fichiers d'en-tête nécessaires. Les fichiers C doivent utiliser la bibliothèque <cstdio> (stdio.h). Introduisez le fichier d'en-tête #include <cstdio> ou #include <stdio.h> avant de démarrer le programme.

1. Ouvrez le fichier : Ouvrez le fichier en créant un pointeur de fichier à l'aide de la fonction fopen().

Cette fonction nécessite deux paramètres : le nom du fichier et le mode d'ouverture.

2. Lire et écrire le contenu du fichier :

Utilisez la fonction fgetc() pour lire un caractère dans un fichier. Utilisez la fonction fputc() pour écrire un caractère dans le fichier.

Utilisez la fonction fgets() pour lire une ligne de chaîne à partir d'un fichier. Utilisez la fonction fputs() pour écrire une chaîne dans un fichier.

attendez

3. Fermez le fichier : Utilisez la fonction fclose() pour fermer le fichier.

En outre, il convient de noter que le processus d'exploitation des fichiers peut rencontrer des situations anormales, telles qu'un échec d'ouverture de fichier, un échec de lecture et d'écriture de fichier, etc., et le traitement correspondant doit être effectué pour garantir l'exactitude et la robustesse du programme. .

Par exemple:

#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;  
}

☆ Étapes de fonctionnement du fichier C++

Introduisez les fichiers d'en-tête nécessaires, y compris les fichiers d'en-tête <iostream> et <fstream> avant de démarrer le programme.

Par rapport au C, le C++ offre des moyens plus pratiques d’ouvrir et de manipuler des fichiers.

1. Ouvrir des fichiers : C++ offre un moyen plus riche d'ouvrir des fichiers que C. En plus d'être compatible avec le mode C, la fonction open() de <iostream> permet d'ouvrir des fichiers. Cette fonction nécessite deux paramètres : le nom du fichier et le mode d'ouverture. Cette fonction nécessite deux paramètres : le nom du fichier et le mode d'ouverture. Vous pouvez également utiliser des classes de flux de fichiers pour ouvrir des fichiers, tels que std::ifstream file(); 

2. Lire et écrire le contenu du fichier :

Utilisez la fonction get() pour lire un caractère du fichier. Utilisez la fonction put() pour écrire un caractère dans le fichier.

Utilisez la fonction getline() pour lire une ligne de chaîne à partir d'un fichier. Utilisez l'opérateur << ou la fonction write() pour écrire une chaîne dans un fichier.

attendez

3. Fermez le fichier : Utilisez la fonction close() pour fermer le fichier.

En outre, il convient de noter que le processus d'exploitation des fichiers peut rencontrer des situations anormales, telles qu'un échec d'ouverture de fichier, un échec de lecture et d'écriture de fichier, etc., et le traitement correspondant doit être effectué pour garantir l'exactitude et la robustesse du programme. .

Par exemple:

#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;
}

Dans le code ci-dessus, utilisez la classe file stream pour ouvrir le fichier :

#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;  
}

Informations sur l'opération de fichier

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

Fichiers et flux C++ https://www.tutorialspoint.com/cplusplus/cpp_files_streams.htm

 

Je suppose que tu aimes

Origine blog.csdn.net/cnds123/article/details/132491773
conseillé
Classement