Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1204 connectés 

  FORUM HardWare.fr
  Programmation

  [c] compter le nombre de char d'un fichier

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[c] compter le nombre de char d'un fichier

n°73326
otb82
Fear is Failure
Posté le 18-11-2001 à 18:36:17  profilanswer
 

voila comment g code la fonction pour savoir le nbre de char qu'un fichier a, j'aimerais savoir s'il existe pas un fonction deja tte prete, car en faite elle fais partie d'un gros truc et elle marche pas a ts les coup ?! (prtt elle me parait bonne)
 
int nbchar(char * fichier)
{
  FILE * entree;
  char i;
  int temp;
 
  entree = fopen(fichier);
  while (!feof(entree))
    {
      fread($i,sizeof(char), 1, entree);
      temp++;
    }  
  fclose(entree);
  return(temp);
}


---------------
email : otb82@hotmail.com
mood
Publicité
Posté le 18-11-2001 à 18:36:17  profilanswer
 

n°73330
otb82
Fear is Failure
Posté le 18-11-2001 à 18:41:47  profilanswer
 

vous aurez corrige de vous meme  
fopen(fichier);
par fopen(fichier, "r" );


---------------
email : otb82@hotmail.com
n°73331
TheJackal
Posté le 18-11-2001 à 18:43:09  profilanswer
 

$i :??:

n°73333
otb82
Fear is Failure
Posté le 18-11-2001 à 18:50:21  profilanswer
 

TheJackal a écrit a écrit :

$i :??:  




$i = &i bien entendu ... encore un ripage de doight sur le clavier :)


---------------
email : otb82@hotmail.com
n°73340
Fork
Posté le 18-11-2001 à 19:08:07  profilanswer
 

Qu'est-ce qui ne marche pas au juste ?
Les fichiers de plus de 64Ko par hasard ?

n°73343
otb82
Fear is Failure
Posté le 18-11-2001 à 19:10:53  profilanswer
 

Fork a écrit a écrit :

Qu'est-ce qui ne marche pas au juste ?
Les fichiers de plus de 64Ko par hasard ?  




 
c ce que je me demande ...
non c des petit fichier ... html de merde ...
en fait des fois le entree = fopen(fichier,"r" )
retourne null donc ca fais planter le reste de mon mini proj  
et je sais aps prkoi ... le fichier existe et a bien les droit en lecture ....
je peux pas me gourer dans le nom du fichier puisque c une fonction qui extrait les nom des fichier a partir d'un repertoire ...


---------------
email : otb82@hotmail.com
n°73344
Fork
Posté le 18-11-2001 à 19:17:24  profilanswer
 

je te propose l'artillerie lourde pour découvrir l'origine du bug :
 
int nbchar(char * fichier)
{
 FILE * entree;
 char i;
 int temp;
 
 entree = fopen(fichier);
 
 if(entree==NULL)
 {
    printf("Erreur ouverture du fichier '%s'\n",fichier);
    exit(0);
 }
 
 while (!feof(entree))
   {
     fread(&i,sizeof(char), 1, entree);
     temp++;
     if(temp<=0)
     {
        printf("Dépassement des capacités de la variable temp. Il faut changer de type.\n" );
        exit(0);
     }
   }  
 fclose(entree);
 return(temp);
}

n°73348
otb82
Fear is Failure
Posté le 18-11-2001 à 19:34:57  profilanswer
 

c le entree est a null
prtant le fichier existe et a les droits en lecture ...


---------------
email : otb82@hotmail.com
n°73351
youdontcar​e
Posté le 18-11-2001 à 19:36:50  profilanswer
 

otb82 a écrit a écrit :

c le entree est a null
prtant le fichier existe et a les droits en lecture ...  



soit précis.
 
* quel est le chemin absolu du fichier ?
* que vaut fichier lorsque tu le passes à ta fonction ?

n°73352
youdontcar​e
Posté le 18-11-2001 à 19:39:45  profilanswer
 

ah oui la question de la fonction pour la longueur du fichier ... :D
 
* utiliser fseek() pour positionner le pointeur de fichier comme relatif à la fin du fichier.
* puis appeler fgetpos() pour chopper la position du pointeur de fichier, donc la taille du fichier.  
 
ça c'est pour la lib standard. y'a des fonctions win32 qui font ça toutes seules (plus les noms en tête).

mood
Publicité
Posté le 18-11-2001 à 19:39:45  profilanswer
 

n°73354
barbarella
Posté le 18-11-2001 à 19:48:57  profilanswer
 

tiens,
 
tu ouvres ton fichier avec des handle et tu fais  
 
long file_length(int hand)
{
 long ret,sauv;
 
 sauv = lseek(hand,0L,SEEK_CUR);
 ret  = lseek(hand,0L,SEEK_END);
 lseek(hand,sauv,SEEK_SET);
 return(ret);
}


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [c] compter le nombre de char d'un fichier

 

Sujets relatifs
[ada] comment accéder a un fichier en ada !![C] Mettre de l'echo dans un fichier .wav
Créer un mail .eml avec un fichier .txt[Flash] Charger un fichier .html dans un movie d'un movie.
C: Atteindre la fin d'un fichier et en recuperer une occurence[java] image dans fichier *.jar ?
[javascript php html] comment forcer le telechargement d'un fichierC ANSI et char *
comment avoir le nombre de caractères d'une chaine ?copier un fichier sous php
Plus de sujets relatifs à : [c] compter le nombre de char d'un fichier


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR