Vous êtes actuellement hors ligne, en attente de reconnexion à Internet.

Comment faire pour rediriger stdout vers un fichier à partir d'un programme Visual C/C++

IMPORTANT : Cet article est issu d'une traduction automatique réalisée par un logiciel Microsoft et non par un traducteur professionnel. Cette traduction automatique a pu aussi être révisée par la communauté Microsoft grâce à la technologie Community Translation Framework (CTF). Pour en savoir plus sur cette technologie, veuillez consulter la page http://support.microsoft.com/gp/machine-translation-corrections/fr. Microsoft vous propose en effet des articles traduits par des professionnels, des articles issus de traductions automatiques et des articles issus de traductions automatiques révisées par la communauté Microsoft, de manière à ce que vous ayez accès à tous les articles de notre Base de connaissances dans votre langue. Il est important de noter que les articles issus de la traduction automatique, y compris ceux révisés par la communauté Microsoft, peuvent contenir des erreurs de vocabulaire, de syntaxe ou de grammaire. Microsoft ne pourra être tenu responsable des imprécisions, erreurs, ainsi que de tout dommage résultant d’une traduction incorrecte du contenu ou de son utilisation par les clients.

58667
Exclusion de responsabilité concernant les contenus obsolètes dans la Base de connaissances
Cet article concerne des produits pour lesquels Microsoft n'offre plus de support. Il est par conséquent fourni « en l'état » et ne sera plus mis à jour.
Résumé
Cet article explique comment faire pour rediriger stdout vers un fichier à partir d'un programme C, puis restaurez le stdout d'origine à un point ultérieur dans le même programme. La fonction C généralement utilisée pour rediriger stdout ou stdin est freopen(). Pour rediriger stdout vers un fichier appelé FILE. TXT, utilisez l'appel suivant :
   freopen( "file.txt", "w", stdout );
Cette instruction permet à toutes les sorties suivantes, qui sont généralement dirigée vers stdout, pour atteindre le fichier. TXT.

Pour renvoyer stdout à l'écran (stdout de la valeur par défaut), utilisez l'appel suivant :
   freopen( "CON", "w", stdout );
Dans ces deux cas, vérifiez la valeur de retour de freopen() pour vous assurer que la redirection a effectivement eu lieu.

Voici un programme court pour démontrer la redirection de stdout :

Exemple de Code

// Compile options needed: none#include <stdio.h>#include <stdlib.h>void main(void){   FILE *stream ;   if((stream = freopen("file.txt", "w", stdout)) == NULL)      exit(-1);   printf("this is stdout output\n");   stream = freopen("CON", "w", stdout);   printf("And now back to the console once again\n");}
Ce programme suppose que stdout doit être redirigé vers la console à la fin du programme.

Avertissement : Cet article a été traduit de manière automatique

Propriétés

ID d'article : 58667 - Dernière mise à jour : 05/03/2015 23:11:00 - Révision : 5.0

  • kbhowto kbmt KB58667 KbMtfr
Commentaires