Du DOS à un fichier texte

Fermé
moumoucha Messages postés 59 Date d'inscription vendredi 15 février 2008 Statut Membre Dernière intervention 21 avril 2010 - 30 avril 2008 à 11:23
jdautz Messages postés 107 Date d'inscription samedi 20 janvier 2007 Statut Membre Dernière intervention 15 février 2018 - 30 avril 2008 à 17:44
Bonjour,
SVP,est ce que vous pouvez m'aider à transférer mon affichage du DOS obtenu après l'exécution de mon programme sur un fichier texte,j'en ai vrmnt besoin pour mon application car je suis bloquée pour le moment;c'est très urgent
Répondez moi vite SVP je vous attends...(je programme en c++)
MERCI d'avance.............................
A voir également:

4 réponses

jee pee Messages postés 39584 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 19 avril 2024 9 225
30 avril 2008 à 11:27
salut,

si sous dos tu lance l'execution d'un programme en reroutant la sortie (avec > ) tu auras un fichier texte des messages affichés

par exemple

dir >liste.txt

le resultat de la commande dir va dans le fichier liste.txt

cdt
2
moumoucha Messages postés 59 Date d'inscription vendredi 15 février 2008 Statut Membre Dernière intervention 21 avril 2010
30 avril 2008 à 11:38
Noon
c'est pas ça ce que je veus dire!
en fait après avoir fait la compilation de mon programme et l'éxécuté ;l'affichage du résultat(c'est à dire l'exécution du main) sera dans une fenêtre du dos;n'est ce pas!! en c++..
je veux que ce résultat soit transférer dans un fichier texte afin de le manipuler;
est ce que je me suis faite comprendre clairement?!!
Merci;je t'attends....
0
Pas vraiment une réponse...

-1- Il me semble que le DOS n'existe plus sous Windows XP (heureusement).

-2- La demande ne me semble pas claire, ou pour le moins bizare. Tu veux récupérer quoi exactement et dans quel objectif?
0
moumoucha Messages postés 59 Date d'inscription vendredi 15 février 2008 Statut Membre Dernière intervention 21 avril 2010
30 avril 2008 à 11:44
Noooooooooooooooon!c'est pas ça ce que je veux dire
bah en fait ,après avoir fait la compilation de mon programme et l'exécuté,(c'est à dire l'exécution du main()
de mon programme ),l'affichage sera dans une fenêtre du dos,n'est ce pas en c++!cet affichage je veux le transférer dans un fichier texte afin que je puisse le manipluer;est ce ke je me suis faite comprendre assez clairement?!!

MERciiiiiiii je t'attends svp!
0
cchristian Messages postés 921 Date d'inscription lundi 21 janvier 2008 Statut Membre Dernière intervention 6 mars 2012 131
30 avril 2008 à 13:49
Bonjour,

Dans ton programme C(++) tu veux diriger tes sorties à la fois vers la console (c'est ce que tu fais déjà, si j'ai bien compris) ET vers un un fichier .txt ?

Si c'est ce que tu veux faire, à ma connaissance je ne vois pas d'autre alternative que de créer dans ton programme ce fichier. En conséquence il te faudra dupliquer les ordres d'écritures des données à "éditer"; Une série d'ordres vers la console (qui existent déjà) une autre vers le fichier .txt.

Mais il peut exister un moyen plus élégant ....................
0
jdautz Messages postés 107 Date d'inscription samedi 20 janvier 2007 Statut Membre Dernière intervention 15 février 2018 15
30 avril 2008 à 13:58
si-si on peu, avec par exemple tee qui permet de dupliquer la sortie à la fois vers la console et un fichier.

Si on n'a pas besoin de la sortie console, il suffi de rediriger la sortie vers un fichier ( en ligne de commande ">" pour écrire dans un fichier, ou ">>" pour ajouter des lignes à un fichier existant.
0
moumoucha > jdautz Messages postés 107 Date d'inscription samedi 20 janvier 2007 Statut Membre Dernière intervention 15 février 2018
30 avril 2008 à 14:24
svp tu peux m'expliquer encore plus j'ai pas bien saisi comment faire la duplication et où exactement?!!




Merci bien d'avance.........je t'attends!
0
j'ai pas bien saisi tu peux me dire comme je fais cette duplication?par kelle instruction ds mon programme?!!!
merci bien d'avance....................................
0
jdautz Messages postés 107 Date d'inscription samedi 20 janvier 2007 Statut Membre Dernière intervention 15 février 2018 15 > moumoucha
30 avril 2008 à 17:44
avec tee mais je me demande si ce n'est pas mes manies de Linux. Si ce n'est fait, install "powershell" qui je crois contient cette commande ou un équivalent. https://docs.microsoft.com/en-us/
0
Bonjour moumoucha,

Si je comprends bien, tu as écrit un programme en C/C++ qui affiche des résultats dans une fenêtre DOS.
Tu utilises donc printf (... etc...).

Exécute ton programme par une ligne de commande.
Menu START | Exécuter .. tapes le chemin vers ton programme (C:\Le_répertoire\mon_programme > C:\chemin_quelconque\nom_de_fichier.txt
Ton programme va s'exécuter et toutes les sorties vont être redirigées vers le fichier.txt que tu as spécifié.
Si tu veux voir aussi les éventuels messages d'erreur que ton programme pourrait afficher, remplace
> C:\chemin_quelconque\nom_de_fichier.txt
par
> C:\chemin_quelconque\nom_de_fichier.txt 2>&1

Ceci redirige les sorties dans le fichier .txt spécifié que tu peux manipuler par la suite.

Voilà tout.
J'espère avoir compris ton problème et t'avoir été utile.
Si tu as toujours un problème, montre un bout de ton programme...

Yvan.
PS: Pour jdautz, NON, DOS n'est pas mort, ni sous Win2000 ni sous Win XP, ni même sous Win Vista ou même MacOS qui a désormais aussi une ligne de commande.Bien heureusement! La ligne de commande est bien plus performante que l'interface graphique, surtout s'il y a des paramètres à fournir à une application.
Ex: ajoute un utilisateur dans un groupe...
Il faut créer l'utilisateur puis le mettre dans le groupe voulu.
passe en mode console et tape ceci:

net user %user% %usrpwd% /ADD /expires:never /active:yes /fullname:"%fullname%" /homedir:c:\profile\%user%\home /profilepath:c:\profile\%user% /scriptpath:logon.bat /usercomment:"%comment%" /Domain

net accounts /MAXPWAGE:UNLIMITED /DOMAIN

net localgroup nom_du_groupe domain_name\%user% /add

C'est dix fois plus rapide que passer par l'outil graphique de création d'utilisateurs.
En plus, tu sauves tout cela dans un petit fichier texte que tu renommes .bat, tu modifies un peu et tu n('as qu'une seule comande à donner pour créer un ou plusieurs utilisateurs en 1/10 de seconde


Yvan.
0
jdautz Messages postés 107 Date d'inscription samedi 20 janvier 2007 Statut Membre Dernière intervention 15 février 2018 15
30 avril 2008 à 17:36
Je n'ai pas dis que la ligne de commande était morte, utilisateur de Linux avec bash ou zsh j'en serais triste :P

Je dis que le shell (la console) de Windows XP, de Vista et encore bien plus de Mac OsX °<:OD ça n'est pas du DOS et heureusement! Même windows a fait des progrès ;-)

Je rapelle que DOS est un système d'exploitation peu performant (mono-tâche, mono-utilisateur), avec une système de ligne de commande archi-nul comparé à Unix.
0