Fread C ++

Fread C ++
La gestion des fichiers est l'une des parties essentielles de tous les langages de programmation. L'écriture de code petit et simple, qui n'a besoin que de petites entrées et produit une petite sortie, peut être gérée facilement sur le terminal. Mais quand il s'agit de donner une entrée énorme et que la sortie produite sera également énorme, alors les fichiers deviennent nécessaires pour utiliser. La gestion des fichiers offre des moyens de programmation efficaces avec d'énormes données d'entrée et de sortie. De plus, vous n'avez pas à saisir la même entrée encore et encore et vous pouvez enregistrer la sortie du programme pour une utilisation ultérieure. Ici, nous apprendrons à lire les données d'un fichier en utilisant le fread () fonction.

Quelle est la fonction Fread en C++?

Le chariot La fonction est fournie par le CSTdio.bibliothèque H. Le CSTdio.Le fichier d'en-tête H contient toutes les fonctions qui peuvent être utilisées sur le fichier, i.e., lire, écrire, etc. Le fread () La fonction est utilisée avec des fichiers pour lire un bloc de données d'un flux d'entrée. Il lit le tableau des objets de comptage, chaque objet d'octet de taille du flux d'entrée et le stocke dans le flux de sortie spécifié par le pointeur. Les octets totaux lus par la fonction Fread sont de taille * Count. Il renvoie tous les éléments lus avec succès.

Syntaxe de la fonction Fread

Le chariot La fonction prend quatre paramètres: P, S, C et ST. Le size_t est un type entier non signé qui définit le type de variable. Le paramètre 'P' se réfère au bloc de mémoire d'au moins la taille de l'octet du nombre de S * c converti en vide *. Le paramètre «S» contient la taille de chaque élément à lire. Le flux de fichiers, à partir duquel nous allons lire les données, est indiqué par l'option «ST». Il renvoie les éléments lus avec succès et en cas d'erreur, les éléments de retour peuvent être inférieurs au comptage. Les exemples ci-dessous illustreront le fonctionnement du chariot fonctionner mieux.

Exemple 1:
Dans le premier exemple d'un article Fread, nous allons créer un fichier texte sur le bureau et écrire des données dedans. La fonction Fread sera ensuite utilisée pour lire les données du fichier. Voir le code ci-dessous:

#inclure
#inclure
Utilisation de Namespace Std;
int main()

Fichier * f;
Char B [100];
f = fopen ("Test.txt "," rb ");
alors que (!feof (f))

Fread (b, taille (b), 1, f);
couter << b;

retour 0;

Deux fichiers d'en-tête, bits / stdc++.H, et CSTdio sont inclus dans le programme au début. Lors de l'écriture d'un programme C ++, les fichiers d'en-tête essentiels doivent être inclus afin que leurs utilitaires puissent être utilisés dans le programme.

Par exemple, le CSTdio propose toutes les fonctions standard qui peuvent fonctionner sur des fichiers comme lire, écrire et etc. De même, les bits / stdc++.H détient toutes les bibliothèques standard. Ainsi, lorsque vous incluez cela, vous avez inclus toutes les bibliothèques standard de C ++ dans le programme. Le «Utilisation de Namespace Std» est une bibliothèque standard qui permet à l'utilisateur d'utiliser toutes les fonctions de la bibliothèque C ++ standard. À l'avenir, le code complet est écrit dans la fonction principale () où tout l'exécution et le travail se produisent.

Le pointeur de fichier 'F' est défini avec une instruction FILE * F qui pointera vers le bloc de mémoire. Un tableau «B» de taille 100 et de type de type sont définis pour contenir la taille des données qui seront lues à partir du flux.

Le fopen () La fonction ouvre le fichier et prend au moins deux arguments, le nom du fichier et le mode du fichier. Il lance une erreur si le fichier n'existe pas encore ou ne peut être trouvé; Ou bien ouvrez simplement le fichier existant. Le mode fichier (lire, écrire, ajouter, et etc.) fait référence au mode dans lequel le fichier doit être ouvert. Le nom de fichier fait référence au fichier qui doit être lu. Ici, le mode «RB» est fourni, ce qui indique que le fichier doit s'ouvrir dans le format binaire pour la lecture. En ouvrant le fichier, vous devez fournir le chemin complet du fichier où il existe. Par exemple, votre fichier est présent dans le document, vous devez donc ajouter le chemin complet aux documents comme ceci: «C: \\ Users \\\\ Document \\».

Ensuite, nous avons défini une boucle 'while' qui itère via chaque élément du fichier et se termine uniquement lorsqu'il trouve l'EOF (fin du fichier). Dans la boucle `` while '', la fonction FREAD est utilisée et les quatre paramètres sont passés pour la lecture du fichier. L'instruction COUT imprimera les données présentes dans le fichier du terminal.

Enfin, l'instruction RETOUR 0 est utilisée en indiquant: Ne renvoyez rien en cas d'exécution réussie. Appuyez sur le bouton F11 sur le clavier ou cliquez sur l'icône d'exécution de la barre d'outils de Dev C ++ pour exécuter le programme. Maintenant, voyons la sortie ci-dessous:

Exemple 2:
Voyons le fonctionnement de la fonction Fread lorsque la taille du fichier est nul. Voir le code ci-dessous:

#inclure
#inclure
Utilisation de Namespace Std;
int main()

Fichier * f;
Char B [100];
f = fopen ("Test.txt "," rb ");
couter<<"Size of the File = "<retour 0;

Voici la sortie:

Exemple 3:
Comme nous avons vu des exemples simples et faciles, travaillons avec un exemple compliqué. Voir le code ci-dessous:

#inclure
enum size = 5;
int Main (vide)

double a [size] = 10, 20, 50, 70, 100;
Fichier * f = fopen ("C: \\ Users \\” Nom du système "\\ Desktop \\ Test.bin "," wb ");
fwrite (a, sizeof * a, taille, f);
fclose (f);
double b [taille];
f = fopen ("C: \\ Users \\” Nom du système "\\ Desktop \\ Test.bin "," rb ");
size_t r = fread (b, sizeof * b, taille, f);
if (r == taille)
put ("array contentes =");
pour (int n = 0; n < SIZE; n++)
printf ("% f", b [n]);

fclose (f);

Ici, nous avons déclaré un «énumération» afin que la «taille» puisse être utilisée plus commodément. En modifiant la valeur d'une «taille» variable, elle change dans le programme complet.

Un tableau de type double est créé contenant les données qui seront écrites dans le fichier. fopen () La fonction ouvre un fichier binaire en mode écriture 'wb'. Si le fichier binaire existe déjà, il l'ouvre en mode écriture; Sinon, il crée un nouveau fichier avec le nom de fichier fourni. Le fwrite () La fonction est Castoff pour écrire le contenu du tableau dans un fichier. Le fwrite () La fonction prend les mêmes paramètres que fread () fonction. Après avoir écrit les données dans le fichier, le fclose () La fonction est utilisée pour fermer le fichier afin qu'aucune modification inutile ou involontaire ne puisse être apportée dans le fichier.

Le reste de la fonction Fread est le même que nous avons utilisé dans des exemples précédents. Voyons le résultat de ce code:

Comme vous pouvez le voir, les données du tableau sont écrites avec succès dans le fichier.

Conclusion

Dans ce guide, nous avons eu un aperçu de fread () fonction. Nous avons appris à utiliser le chariot fonction avec des fichiers pour lire les données. Nous avons donné la démonstration pratique pour trois façons différentes d'utiliser le chariot fonction dans le langage de programmation C ++.