Messieurs dames, je vous salue bien bas.
- Le contexte : faire une copie d'un fichier texte en utilisant les itérateurs associés aux flots (istream_iterator etc...)
NB : j'ai bien concience qu'il existe d'autres moyens de dupliquer un fichier, mais c'est cette manipulation précise qui m'intéresse ici.
- Le code à l'essai :
- Résultat attendu : deux fichiers de taille et de contenu identique
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 #include <iostream> #include <algorithm> using namespace std; ... ... ifstream ifstr( "aaa.txt", ios::binary | ios::in ); ofstream ofstr( "aaa_copy.txt", ios::binary | ios::out ); istream_iterator< char, char > begin( ifstr ); istream_iterator< char, char > end; ostream_iterator< char, char > out( ofstr ); copy( begin, end, out ); ... ...
- Résultat obtenu : aaa_copy.txt est plus petit que son modèle. Tous les sauts de ligne ont disparu.
- Question1 : : Pourquoi donc :
- Question2 : : Comment faire :
Dans l'attente d'une réponse éclairée et argumentée de votre part, je vous prie de recevoir, mesdames et messieurs, mes rtès caniculaires salutations.
Votre serviteur,
C.B.
Partager