Maison > développement back-end > C++ > Écriture de fichiers binaires ou texte : quelles sont les principales différences dans la gestion des données ?

Écriture de fichiers binaires ou texte : quelles sont les principales différences dans la gestion des données ?

Mary-Kate Olsen
Libérer: 2024-12-25 14:14:09
original
890 Les gens l'ont consulté

Binary vs. Text File Writing: What are the Key Differences in Data Handling?

Comprendre les différences entre l'écriture de fichiers en mode binaire et texte

Lors de l'écriture de données dans un fichier, les programmeurs peuvent choisir entre le mode binaire et le mode texte . Le mode binaire permet le transfert direct des données sans aucune modification, tandis que le mode texte intègre certaines traductions spécifiques à MS Visual C.

Considérez l'extrait de code suivant qui écrit des données dans un fichier :

unsigned char buffer[256];
for (int i = 0; i < 256; i++) buffer[i] = i;
int size = 1;
int count = 256;
Copier après la connexion

En mode binaire, les données sont écrites directement dans le fichier :

FILE *fp_binary = fopen(filename, "wb");
fwrite(buffer, size, count, fp_binary);
Copier après la connexion

En mode texte cependant, les données subissent certaines traductions avant d'être écrit :

FILE *fp_text = fopen(filename, "wt");
fwrite(buffer, size, count, fp_text);
Copier après la connexion

Plus précisément, sous Windows, les traductions suivantes se produisent lors de l'ouverture d'un fichier en mode texte :

  • Les sauts de ligne ('n') sont convertis en 'rn' séquences en sortie.
  • Les séquences de retour chariot/saut de ligne sont converties en sauts de ligne en entrée.
  • En mode ajout, la fin du fichier est vérifiée pour un caractère Ctrl Z (« x1A »). S'il est présent, il est supprimé et le caractère est traité comme la fin du fichier. Il n'est cependant pas annexé au dossier.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal