begin process at 2012 02 10 19:43:34
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Débutant(e)

 > 

Ecrire dans un fichier texte avec espaces


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Ecrire dans un fichier texte avec espaces

jeudi 20 novembre 2008 à 11:53:31 | Ecrire dans un fichier texte avec espaces

zeprex

Hello, donc voila j'aimerais écrire dans un fichier texte, mais il ne prends pas mes espaces :(

Le Code :


#include <stdio.h>
#include <string.h>

void main()
{
  FILE *F;
  char contenu[100] ;
  char NOM[30];
  int menu;

  printf("Menu \n\n");
  printf("1. cree un fichier\n");
  printf("2. generer un fichier batch");
  scanf("%d",&menu);
  printf("\n");
 
  switch (menu)
  {
      case 1:
       printf("Entrez le nom du ficher avec l'extension ( exemple: monfichier.txt)\n ");
  scanf("%s", NOM);
  F = fopen(NOM, "w"); 

  printf("Entrez le contenu du fichier ");
  scanf ("%s", contenu);
  fwrite(contenu,sizeof(contenu),1,F);


     
    
  fclose(F);
       break;
      case 2:


  F = fopen("batch.bat", "w"); 


  fprintf(F, "ipconfig /all > ips.txt");
     
    
  fclose(F);
}}


 NE TENEZ PAS COMPTE DU BATCH ÇA ÇA MARCHE.

Donc comme ca les espaces sont devenus des caractères spéciaux dans le fichier.txt de destination, et si j'utilise fprintf il ne m'écrit que le 1er mot.

Quelqu'un pour m'aider? merci


vendredi 21 novembre 2008 à 13:17:58 | Re : Ecrire dans un fichier texte avec espaces

uaip

Et en changeant ton fwrite(contenu,sizeof(contenu),1,F); par fputs(contenu,F); ?

Cordialement, uaip.
vendredi 21 novembre 2008 à 17:04:03 | Re : Ecrire dans un fichier texte avec espaces

zeprex

même problème, un seul mot :/
vendredi 21 novembre 2008 à 17:09:32 | Re : Ecrire dans un fichier texte avec espaces

uaip

Ah mais oui, suis-je bête.
Ton scanf ("%s", contenu); ne récupère que le 1er mot saisi. Le masque %s ne calque qu'un seul mot (il s'arrête au premier espace).
Il va donc falloir trouver un autre moyen pour récupérer tout le texte... (perso, je n'ai pas d'idée )

Cordialement, uaip.
samedi 22 novembre 2008 à 09:12:24 | Re : Ecrire dans un fichier texte avec espaces

Adeon

je savais pas que scanf s'arretait au premier mot.
Tu peux ptete essayer du coté de cin >> variableTexte;

______________________
Adeon, programmeur de jeux sur directX 9 (http://theolith.com) a votre service !

samedi 22 novembre 2008 à 12:39:55 | Re : Ecrire dans un fichier texte avec espaces

uaip

Idem, je pensais que les espaces étaient comptés dans un %s.
Mais mes tests m'avaient montré que non. Une fois j'ai voulu récupérer une chaine de mots entre guillemets, et sscanf(chaine,"blabla \"%s\" blabla",&chaine2); ne marchait pas correctement non plus.

Et s'il veut utiliser l'opérateur cin, il va falloir qu'il intègre le C++ car je ne vois que du C dans son code.

Cordialement, uaip.
samedi 22 novembre 2008 à 14:31:58 | Re : Ecrire dans un fichier texte avec espaces

BastienL21

Slt à tous,
Il me semble qu'il existe une syntaxe du type :
scanf("%[^\n]",...);//On peut modifier '\n' par n'importe quel caractère
Qui te prends le texte jusqu'au premier retour à la ligne, ou aussi :
fflush(stdin);
gets(chaine);

@++ Bastien

//Vive Ubuntu !!!
samedi 22 novembre 2008 à 15:39:42 | Re : Ecrire dans un fichier texte avec espaces

uaip

Yeps.
Au passage BastienL21, tu n'aurais pas un bon lien sous la main expliquant les masques de ce style ? (bien que ce que tu viens de marquer ressemble fort à une regexp).
J'ai déjà trouvé plusieurs exemples, mais pas un lien expliquant brièvement l'utilisation des masques.

Cordialement, uaip.
samedi 22 novembre 2008 à 15:44:55 | Re : Ecrire dans un fichier texte avec espaces

BastienL21

Non, désolé, j'ai retrouvé cette technique dans un coin de ma tête mais c'est tout, je ne connais pas de bons liens, désolé.

@++, B@stien

//si vous avez 15 secondes,(chargements compris!), répondez à ce sondage SVP :
http://pixule.com/sondage/59755078573_Sous-quel-OS-tournestu-.html
samedi 22 novembre 2008 à 15:50:58 | Re : Ecrire dans un fichier texte avec espaces

zeprex

j'ai essayé avec gets même soucis :/

1 2

Cette discussion est classée dans : fichier, menu, printf, espaces, contenu


Répondre à ce message

Sujets en rapport avec ce message

Petit probleme de code en C sur Linux !! [ par UncleShu ] Je voudrais créer un fichier dans le réperoire personnel d'un utilisateur mais mon code ne marche pas !!#include #include #include #define DIR $HOM Debutant : ecrire et lire un fichier txt [ par manu ] Bonjour a tous.Je debute, aussi desole.... :)Je cherche donc a ecrire dans un fichier txt, puis a lire ce fichier ligne a ligne, faire un split / expl Analyse fichier log a faire en C [ par Nexouille ] A l'aideeeeeeeeeeeeeeeeeeeeeeeeee***************************************Les serveurs web enregistrent la trace des visites dans des fichiers de log. C Aide fichier :) [ par asnow ] Salut a tous :)Voila mon tit code pour ouvrir un fichiervoid Ouverture () {char nomf[20]; printf("Entrez le nom du fichier :"); scanf("%s", nomf lire le contenu d'un fichier en C++ [ par julien20vt ] Je développe sous visual C++, je voudrais lire le contenu d'un fichier et le recopier dans un autre, par contre il ne faut pas que j'utilise le type [C] lecture d'un fichier [ par GazGaz ] lu allalors voila en fait je lis un fichier en c et le probleme c'est que ce fichier est composé de lignes dont la taille exècede largement les 80 car OpenDir de <dirent.h> [ par mbgh1302 ] Bonjour,voilà j'utilise le fichier header , avec lequel j'arrive à lister le contenu d'un répertoire.Le problème c'est que le répertoire, passé en ent accées au contenu d'un fichier langage C [ par khalidlyon ] Ensemble pour la scienceBonjour,je suis toujours avec le pb. d'accées aux données de mon fichier, finalement j'arrive a ccéeder a mon fichiers si il c [debutant]attribution dun mot a une char et comparaison ... [ par DarkEbola ] en fait, jaurais aimé attribuer du texte a une charkke chose comme 500 ou 600 caracteres maximais jarrive pas a lui attribuer plus de 1 Charsuis-je pl Affichage d'une image BMP en C [ par sabres ] Voici le code source d'un début de programme écrit sous Turbo C/C++ permettant d'afficher les caractéristiques d'une image BMP et de l'afficher. Le pr


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 6,178 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales