Je pensais "enchaîner" deux iostreams C++ ensemble pour filtrer l'entrée deux fois. J'utilise gzstreams pour lire les fichiers compressés en zlib et je pensais coder un flux qui lit à partir d'un flux et effectue des conversions d'encodage. Peut-être en passant un flux ouvert comme paramètre constructeur ... Comment pensez-vous que cela pourrait être mieux accompli?chaînage des flux C++
2
A
Répondre
6
Je ne l'ai pas utilisé mais filtering_stream peut aider.
À titre d'exemple, j'ai trouvé a mailing list post avec indent.hpp, qui met en oeuvre un filtre de sortie qui indente sorties:
boost::iostreams::filtering_ostream out;
indent_filter::push(out,2);
out.push(std::cout);
et de l'utiliser comme ceci:
out << "Hello Filter!\n"
<< indent_in
<< "this is\n"
<< "indented\n"
<< indent_out
<< "until here\n"
;
qui résultat en sortie:
Hello Filter!
this is
indented
until here
Questions connexes
- 1. Méthode de chaînage en C#
- 2. Les itérateurs de chaînage pour C++
- 3. Chaînage des animations JQuery via l'itération
- 4. Flux C++ Boost io, gestion des erreurs
- 5. Chaînage les événements
- 6. YUI 3 Chaînage
- 7. Chaînage VisualStates dans Silverlight
- 8. Flux d'octets C++
- 9. Chaînage d'un tableau dans Php
- 10. Travailler avec des fichiers fstream dans un chaînage de débordement en C++
- 11. Django ORM: chaînage des querysets agrégés en un
- 12. Le chaînage de fonctions est également considéré comme des rappels?
- 13. Flux C++ vers la mémoire
- 14. Comment écrire/lire des bits de/vers un flux? (C#)
- 15. Ressources pour travailler avec des flux vidéo en C#
- 16. Modèle de filetage: chaînage et bouclage
- 17. C# -jQuery comme la fonction de chaînage est possible en C#?
- 18. Gestion des flux RSS
- 19. jQuery: Chaînage événements - Correction du code
- 20. Propriétés de dépendance de chaînage avec MVVM
- 21. Chaînage de routes avec Zend Framework
- 22. Flux de fichiers plus importants utilisant C#
- 23. Flux de contrôle en Objective-C
- 24. Images bitmap C#, tableaux d'octets et flux!
- 25. Clearcase UCM: comment trouver des versions dans le flux A créé en fusionnant du flux B
- 26. Chaînage de prédicats de classement (par exemple pour std :: sort)
- 27. lecture des flux RSS -> pas compatible
- 28. Exposer des données dans un flux d'atomes
- 29. Flux de paiement mensuel des factures
- 30. Tester l'historique des flux de travail Autocleanup
Qu'entendez-vous par "chaînage"? –
Comme eed3si9n posté, un peu comme boost :: filtre iostreams. Mais je me demandais si ce serait une bonne conception de le faire soi-même en passant un flux précédemment ouvert à votre constructeur de classe personnalisé dérivé du public std :: streambuf ou avec une autre approche. – piotr