-1
votes

Une autre façon d'écrire dans un fichier au lieu d'utiliser "<<" en C ++?

Lorsque nous chargons un fichier à l'aide de l'en-tête FStream, nous utilisons >> et getline () pour obtenir une ligne complète.

Lorsque vous l'écrivez dans un fichier de sortie, nous utilisons <<< / code>

Y a-t-il une autre solution alternative pour écrire la ligne dans le fichier de sortie au lieu de <<< / code>?


8 commentaires

Premièrement, >> n'est pas limité à un caractère . Deuxièmement, pourquoi voulez-vous une alternative au <<< / code>.


Pour la connaissance, je pense qu'il n'y a pas de limite à ce que nous pouvons réaliser dans la programmation, pourquoi limité à une seule méthode seulement .. !!


Découvrez cet article alors. Vous auriez beaucoup à explorer après cela: Cplusplus.com/doc/tatudial/files / # binaire_files lecture / écriture est sûrement lequel vous avez besoin. Mais c'est préférable de les utiliser uniquement dans des fichiers binaires.


Une lecture très informative, merci @ brc-dd pourquoi il est préférable aux fichiers binaires seulement .. ???


C'est parce que ces fonctions sont conçues en gardant à l'esprit les fichiers binaires. Si vous les utilisez sur le fichier texte, il est fort probable que vous obtiendrez un texte non formaté si vous ouvrez ce fichier texte avec un éditeur de texte. Ceci est principalement parce que ces fonctions copient le bit par des données de bits de tampon vers le fichier et ignorent les conversions de ligne de fin spécifiques au système.


Cela signifie-t-il donc si nous les utilisons pour les fichiers TXT, ils réduisent l'efficacité?


Non ça ne prendrait plus plus longtemps. En fait, lus et écrire sont plus rapides. Ce que je dis, c'est qu'ils sont non formatés. Ce que vous écrivez en utilisant écrire , vous devrez lire en utilisant lire pour éviter les erreurs. Vous ne pourrez pas lire manuellement le fichier en l'ouvrant dans un éditeur de texte. Il défie l'unique but d'utiliser un fichier de test.


L'écriture est assez utile si vous souhaitez imprimer un tableau Char au fichier, mais ce n'est pas celui des autres types de données. Par exemple, si vous essayez d'écrire un entier, vous devrez tout d'abord le convertir en un tableau de caractères. Vous pouvez le jeter de manière statique en caractères * mais cela ne serait d'aucune utilité car il ne sera pas lisible par l'homme. Vous devez utiliser lire () pour récupérer ces informations que vous avez écrites ou utilisez quelque chose comme itoa () avant l'opération d'écriture.


3 Réponses :


0
votes

Vous pouvez utiliser mettre code> lien ici A > et écrire code> lien ici comme alternative .

 // single character
char character;
cout.put(character);

//For string
char * buffer = new char[size];
cout.write(buffer, size);


1 commentaires

@NumaanJaved Si vous trouvez la réponse utile, acceptez également la réponse au profit des futurs utilisateurs également. Merci.



0
votes

Vous pouvez également #include et aller pour l'API C, c'est-à-dire à l'aide de fopen / printf ...

Voir doc: https://fr.cppreference.com/w/cpp/ Header / Cstdio


2 commentaires

Comment ouvrir un fichier .. Comment donner une sortie .... ne sont pas liées à ma question que je demande à écrire dans un fichier ... Y a-t-il un moyen de le faire avec CSTDIO?


fwrite: en.cpprefreence.com/w/cpp/io/c/fwrite < / a> ou imprimerf variantes en.cppreference.com/w/cpp/io/ c / fprintf ou (par char) Putc en.cpprefreence.com / W / CPP / IO / C / FPEC



0
votes

C'est très simple. Regardez le code ci-dessous xxx

voir, c'était trop facile;


0 commentaires