begin process at 2012 05 29 18:37:39
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Pb de majuscule à modifier sur un fichier


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

Pb de majuscule à modifier sur un fichier

mercredi 11 mai 2005 à 16:32:55 | Pb de majuscule à modifier sur un fichier

lacharlottinne

Je voudrai convertir le text de mon fichier tout en minuscule .. quelqu'un peut m'aider ? voici le code

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
#include <ctype.h>

/*--------------------Ouverture d'un fichier et affichage --------------------*/

int main ()
{
// déclaration
    int i,len;
    char fichier[32];
    FILE *f1=NULL;
    char phrase[len];
    char tab_char[180000];
    char t[32];
   
    char sep[]=".,;:!?\n\t\r\'\"\[]\0";
   
// Recommence l'ouverture du fichier tant que tu n'a pas reussi
    while (f1==NULL)
    {
   
            printf ("Entrer le chemin du fichier\n");
            scanf ("%s",fichier);
            f1= fopen(fichier,"r");
            if (f1==NULL)
            {
               printf ("Erreur: Probleme d'ouverture en lecture");
            }
            else
            {
                printf ("Ouverture reussite !! \n ");
                printf ("\n");
            }       
    }
      
// retirer les majuscules

while (!feof(f1))
{
    fscanf (f1,"%s",&t);
    while (t[i]!='\n')
    {
        fscanf (f1,"%s",&phrase);
        len=strlen(phrase);
        for(i=0;i<len;i++)
    {
        if( ('A' <= phrase[i]) && (phrase[i]<='Z') )
        {
            phrase[i] = 'a' + (phrase[i] - 'A');   
        }
    }
    }   
}    
}
fclose (f1); 
getch();
return 0;             
     
}       

Vous pouvez me contacter par msn ou par aol : lacharlottinne@hotmail.com / lacharlottinne@aol.com

voila merci c pour un projet je suis dans la merde ..

mercredi 11 mai 2005 à 17:07:40 | Re : Pb de majuscule à modifier sur un fichier

ciddu42

Membre Club

une des plusieurs methodes possible :
char *SetFileTextToMin( FILE *File )
{
   unsigned long int FileSize = 0;
   char *Text = NULL;
   fseek( File, 0, SEEK_END );
   FileSize = ftell( File );
   fseek( File, 0, SEEK_SET );
   fread( Text, sizeof( char ), FileSize, File );
   strcpy( Text, strlwr( Text ) );
   return Text;
}

mercredi 11 mai 2005 à 17:10:08 | Re : Pb de majuscule à modifier sur un fichier

ciddu42

Membre Club
SetFileTextToMin te retournes tout le texte du fichier en minuscule
mercredi 11 mai 2005 à 17:26:13 | Re : Pb de majuscule à modifier sur un fichier

ciddu42

Membre Club

excuses moi, la fonction que je t'avais donné ne fonctionnait pas, en voila une qui fonctionne :

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

char *GetFileTextMin( FILE *File )
{
 unsigned long int FileSize = 0;
 char *Text = NULL;
 fseek( File, 0, SEEK_END );
 FileSize = ftell( File );
 fseek( File, 0, SEEK_SET );
 Text = (char*) malloc( sizeof( char ) * ( FileSize + 1 ) );
 fread( Text, sizeof( char ), FileSize, File );
 Text[ FileSize ] = '\0';
 strcpy( Text, strlwr( Text ) );
 return Text;
}
int main( void )
{
 FILE *File = NULL;
 File = fopen( "text.txt", "rb" );
 printf( "%s", GetFileTextMin( File ) );
 fclose( File );
 return 0;
}

mercredi 11 mai 2005 à 20:56:42 | Re : Pb de majuscule à modifier sur un fichier

Arnaud16022

Membre Club
autre solution, originale et portable à 10000%: pour chaque caractère (pour autant que ca soit bel et bien une lettre et pas un chiffre ou quoi, tu fais
if (chaine[a]>90)chaine[a]-=(97-65);
sisi
si tu comprends pas trouves toi une table ASCII

_______________________
Omnia vincit labor improbus
mercredi 11 mai 2005 à 21:27:27 | Re : Pb de majuscule à modifier sur un fichier

steve_clamage

Justement ce n'est pas portable, il faut utiliser toupper (<ctype.h>).
jeudi 12 mai 2005 à 18:01:39 | Re : Pb de majuscule à modifier sur un fichier

Arnaud16022

Membre Club
comment ca pas portable? au contraire. ascii c'est 'american standard',c'est le meme pour tous les pcs, sur linux, windows, mac, dos, bios,....

_______________________
Omnia vincit labor improbus
jeudi 12 mai 2005 à 19:02:03 | Re : Pb de majuscule à modifier sur un fichier

steve_clamage

Oui ASCII c'est 'American Standard...' seulement ce n'est pas le seuljeu de caractère existant, on trouve également l'EBCDIC d'IBM (ce quifait que ton code n'aura pas le même comportement sur une machine IBM).C'est ecris dans K&R, de nombreux exemples supposent que le jeu decaractere est l'ASCII mais le C ANSI (ISO C90) est indépendant du jeude caractere de la machine par soucis de portabilité (sinon pas de Csur les machines IBM par exemple). C'est la raison d'etre des fonctionsde l'en-tete <ctype.h> et independament du jeu caractere on a desrelations qui sont toujours vrai comme le codage consécutif [a-z] et[A-Z] vrai pour signed char et unsigned char ce qui fait que l'on peutoujours faire un peu d'arithmetique de maniere portable.

Si tu reduis le monde des ordinateurs à celui des PC tu ne saurasjamais programmer de maniere portable. Le but du C c'est d'etreportable, renseignes toi sur l'histoire du C pour comprendre saphilosophie car c'est sur que d'etre habitué à programmer sous windowsca n'aide pas.
jeudi 12 mai 2005 à 21:04:12 | Re : Pb de majuscule à modifier sur un fichier

Arnaud16022

Membre Club
bon écoute point de vue portabilité je te fais confiance, moi c'est pasmon fort, Funto me saoule pour que je fasse du portable mais moij'arrive jamis, il a trop du mal a recompiler
mes sources sous ubuntu.... alors je te fais confiance
++
_______________________
Omnia vincit labor improbus


Cette discussion est classée dans : fichier, include, char, f1, phrase


Répondre à ce message

Sujets en rapport avec ce message

Erreurs de compilations bizarres avec Visual C++ 6 [ par VTS_35 ] Bonjour,G encore des problèmes de compilation avec mon programme. Je me suis rendu compte que le programme allait devenir balaise, alors j'ai décidé d aide morse [ par cobra176 ] bonjour a tousje dois faire un programme qui changer les lettres normal en morse et inversementvoici le debut  de mon code# include # include # includ ouvrir plusieur fichierx textes [ par seignseifer ] Bonjour, alors je voudrais ouvrir plusieurs fichier textes pour mon programme. J'ai un peu avance mais je bloque sur quelquechose. Je fais une boucle Lecture d'un fichier [ par Darkvlador ] luVoilà mon code : #include #include #include using namespace std;char *tmp;unsigned int size;<b erreur de pointeur [ par africanwinners ] Bonsoir j'ai concu un programme c qui permet de lire un fichier,de supprimer les doublons (les doubles) mais il y a des problèmes lors de la lecture d Problème de compilation [ par shinji63 ] #include #include #include #include #include #include #include #include #include #include #include #include #incl lecture fichier texte et mettre le resulat dans un tableau. [ par walidaydi ] bonjour, j'ai un fichier texte qui contient des nombres réels séparés par un espace. comme ca: 124.31611622563169 161.22159929707496 186.9616408968881 enregister un fichier depuis les ressources [ par baby3378 ] Bonjour à tous, Voilà, afin de faciliter l'utilisation d'une application j'ai décidé de stocker les images et dll en ressource dans mon application af Ecriture Fichier Texte (avec ofstream) [ par baptchr55 ] Bonjour à tous... Je souhaiterais stocker dans un fichier texte l'ensemble des données que je reçois (par le biais d'un socket cpp). à savoir j'ai es enregistrement handle fichier texte [ par flamouth ] Bonsoir, depuis maintenant 2 jours je cherche comment faire pour enregistrer le handle d'une fenêtre ayant le focus dans un fichier texte. J'ai reussi


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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 : 1,108 sec (4)

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