C ++ Écrivez le fichier CSV

C ++ Écrivez le fichier CSV

Avant de plonger profondément dans notre sujet, faites-nous part des fichiers CSV. CSV est la valeur séparée des virgules. Toutes les valeurs de ce fichier sont séparées à l'aide de virgules, ce qui indique que ce type de fichier stocke les données sous une forme tabulaire. Les fichiers CSV sont utilisés pour stocker des données liées à un objet. Supposons que nous ayons des informations sur un employé qui comprendra le nom, le salaire, le département, etc. Chaque ligne indique le nombre d'enregistrements, et chaque enregistrement se compose d'un ou plusieurs champs séparés par des virgules. Les lignes sont les enregistrements des objets où chaque enregistrement contient plusieurs colonnes. Il a un nombre égal de virgules car c'est une forme tabulaire. Les fichiers CSV sont utilisés dans les fichiers d'échange de données. Nous savons qu'il n'y a pas de méthode ou de mot-clé spécifique à écrire dans un fichier CSV. Si nous voulons écrire dans un fichier CSV, nous devons utiliser les données d'E / S du fichier, et le codage basé sur la logique sera effectué pour écrire dans un fichier CSV.

Syntaxe

Il n'y a pas une telle syntaxe spécifique pour écrire dans des fichiers CSV.

Ceci est un échantillon de l'apparence des fichiers CSV. Toutes les valeurs dedans sont séparées à l'aide de virgules «», et chaque ligne indique les caractéristiques d'un seul objet. Dans l'extrait précédent, nous pouvons voir que les données des employés sont stockées et chaque ligne contient les détails d'un employé, où chaque colonne indique le nombre de caractéristiques.

Exemple # 01

Commençons par créer un fichier CSV simple. La création d'un fichier CSV est similaire à la création d'un fichier texte. Par exemple, obtenir des données de l'utilisateur et l'écrire dans le fichier à l'aide de virgules «», en tant que délimiteur, et «/ n» en tant que séparateur de lignes. Dans cet exemple, nous créerons un fichier CSV dans lequel nous stockons trois enregistrements d'étudiants avec des attributs «nom», «ID», «classe» et «nom du collège». Ces enregistrements sont tirés de l'utilisateur comme entrée. Regardons maintenant notre code, qui est illustré dans la figure suivante.

Après avoir inclus nos fichiers d'en-tête, iostream, fstream et string, nous plongeons dans notre fonction principale, où tout notre processus est terminé. Le FStream est le fichier d'en-tête utilisé pour effectuer des opérations d'entrée / sortie associées au système de fichiers. À l'intérieur de la fonction principale, nous déclarons une variable entière, «std_id», qui sera responsable de la maintenance du numéro de jet de l'étudiant qui serait une valeur entière. Et puis, nous avons déclaré que les variables de chaîne «nom» car le nom de la variable reflète la valeur qu'elle contiendra est le nom de l'étudiant. Le second est le «collège» qui tiendra le nom de l'Institut, où la troisième variable, «STD_CLASS», est responsable de la tenue de la classe de l'étudiant.

Après avoir déclaré toutes nos variables, nous avons déclaré «FOT» à l'aide de FStream, qui est le type de données qui indique le flux de fichiers et nous permet d'effectuer des opérations de lecture, d'écriture et de mise à jour sur les fichiers. Maintenant, en utilisant la variable de flux de fichiers «fout», nous ouvrirons le fichier nommé «std_details.Fichier CSV "utilisant l'instruction open () auquel nous avons passé notre nom de fichier avec le mot-clé" iOS :: out "qui est utilisé pour ouvrir le fichier à des fins d'écriture. Comme nous devons obtenir des valeurs de l'utilisateur comme entrée, nous demanderons à l'utilisateur de saisir les valeurs stockées dans un fichier à l'aide de fout. Nous avons d'abord écrit la première ligne, qui nous dira ce qui est stocké dans le fichier CSV, puis nous avons demandé à l'utilisateur d'utiliser une instruction COUT pour saisir les valeurs. Maintenant, nous avons déclaré pour une boucle de taille 3, ce qui signifie que l'utilisateur doit entrer dans l'enregistrement de trois étudiants. Étape par étape, nous obtiendrons toutes les valeurs de l'utilisateur pour stocker en une seule ligne, et chaque valeur est séparée à l'aide de la virgule Delimiter ",".

Pour obtenir les valeurs de l'utilisateur, nous avons utilisé l'instruction getline (), en passant deux arguments. Le premier est «CIN», qui indique au compilateur de prendre la valeur saisie par l'utilisateur comme entrée, puis de la stocker dans la variable qui est passée comme deuxième argument. Après avoir effacé le tampon en utilisant le CIN.Instruction ignore (), nous avons simplement affiché l'enregistrement entré une fois, puis le pointeur est sorti de la boucle. La boucle obtiendra les valeurs et les imprimera jusqu'à ce que les itérations soient terminées.

En utilisant «FOT», nous avons affiché les enregistrements que l'utilisateur a entrés et chaque enregistrement est séparé à l'aide d'une virgule «,». En sortant de la boucle, nous fermerons le fichier en utilisant le FOT.Déclaration de clôture ().

Continuez maintenant vers notre prochaine étape dans laquelle nous créons une autre variable FStream, «Fin», que nous utiliserons pour afficher les données du fichier qui a été créé. Ensuite, nous déclarons une variable de chaîne qui stockera les données analysées à partir du fichier CSV. Ensuite, en utilisant la nouvelle variable fstream «Fin», nous ouvrirons le fichier «STD_DETAILS.CSV ”Utilisation d'une instruction ouverte à laquelle cette fois-ci, nous avons passé le nom de fichier qui est créé et le mot-clé« ios :: in: »qui est responsable de l'ouverture du fichier comme mode de lecture.

Ensuite, nous avons à nouveau déclaré pour Loop pour obtenir l'enregistrement de l'étudiant à partir du fichier qui s'exécutera trois fois. Dans la boucle for, nous avons utilisé la déclaration getline (), à laquelle deux arguments sont passés. Le premier est «la nageoire», et la seconde est «Données», la «FIN» lira l'enregistrement une par une, puis la transmet à la variable «Data». À l'aide de l'instruction «cout», nous avons affiché les enregistrements un par un, et à la fin, nous avons placé «\ n», qui rompra la ligne lorsque la ligne est terminée.

Examinons le fichier CSV créé, comme indiqué dans le fichier CSV suivant qui était automatiquement affiché en sortie lorsque le code entier a été compilé. Nous avons créé un fichier avec les dossiers de trois étudiants. Chaque enregistrement est séparé à l'aide de la virgule, et chaque ligne est divisée lorsque l'enregistrement est terminé.

Comme le montre la figure suivante, la sortie de notre code qui affiche les données une par une que nous avons entrée, et à la fin, elle a été affichée sous la forme d'un fichier CSV.

Conclusion

Cet article a brièvement discuté de l'écriture dans un fichier CSV et comment nous pouvons créer un fichier CSV en C++. C ++ ne fournit aucune bibliothèque intégrée pour écrire dans des fichiers CSV, alors que nous pouvons écrire la même chose que le fichier texte. Les fichiers sont écrits par ligne par ligne et séparés à l'aide de virgules. Les fichiers CSV peuvent également être écrits via des pointeurs. Vous pouvez écrire dans un fichier CSV par n'importe quelle méthode, qu'il s'agisse d'un fichier texte ou d'utilisation de pointeurs. Nous espérons que cet article sera utile pour que vous ayez une meilleure idée de la façon de stocker les données sous forme tabulaire.