Calcul du nombres de caractere dans un fichier en libc par defaut

shadow1779 Messages postés 706 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2013 - 21 nov. 2005 à 19:39
cs_Matt67 Messages postés 549 Date d'inscription samedi 6 septembre 2003 Statut Membre Dernière intervention 6 mars 2010 - 22 nov. 2005 à 18:34
Bonjour,



j'aimerai avoir la methode afin de calculer le nombre de caracteres
present dans un fichier sans utiliser l'API windows :) (trop galere
j'trouve pour le peu que j'veux en faire)

10 réponses

cs_Matt67 Messages postés 549 Date d'inscription samedi 6 septembre 2003 Statut Membre Dernière intervention 6 mars 2010 3
21 nov. 2005 à 21:18
bonsoir,



arrete moi si je me trompe :

nombre de caractere = taille du fichier en octets si un caractere codé sur 8 bits (UTF-8)

nombre de caractere = taille du fichier en octets / 2 un caractere codé sur 16 bits (UTF-16)

...

Matt...
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
22 nov. 2005 à 00:19
Je ne pense pas qu'il y ait de fonction donnant la taille directement.
Tu te positionnes à la fin et ça donne l'offset donc c'est la taille du fichier:
ftell
_ftelli64

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
0
deck_bsd Messages postés 1243 Date d'inscription jeudi 31 mars 2005 Statut Membre Dernière intervention 3 août 2016 2
22 nov. 2005 à 08:37
Et bien tu fait une boucle jusqu' EOF , tu récupère les caractères avec
fgetc et tu incrémente un compteur. Mais bon c'est lourd comme méthode.
Mais bo je ne vois pas autre solution. A mon avis demande a BruNews lol
il doit avoir une méthode bien mieu optimisée.



++ALL

bon code
0
shadow1779 Messages postés 706 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2013
22 nov. 2005 à 16:43
bein ya l'API mais c'est affreux j'trouve ca m'embrouille toutes ces fontions a ralonge en + msdn j'trouve ca explique pas super

.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
shadow1779 Messages postés 706 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2013
22 nov. 2005 à 16:44
par contre la boucle jusqua EOF comment on l'a fait?? :s

j'sai que c'est un while mais j'met quoi en gros
.
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
22 nov. 2005 à 17:11
je t'ai donné exemple API qui lit complet, c'est hyper simpliste.
Si prob sur 1 point faut demander.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
0
shadow1779 Messages postés 706 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2013
22 nov. 2005 à 17:25
bon allé j'vai persever mais en fait ac l'api j'comprend pas ces
histoire de DWORD ou de HANDLE et tout ces trucs a déclarer :s c'est ca
qui me gave le plus, ou dans certaines fonctions sur msdn ils
expliquent pas trop a quoi ca sert...
.
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
22 nov. 2005 à 17:45
HANDLE n'est rien d'autre (de manière simpliste) qu'on long 32 bits identifiant un objet Windows (un thread, un fichier, etc...), c'est juste ainsi qu'un prog doit le regarder.
DWORD est alias de: unsigned long, en + c'est tout benef à taper, bien plus court.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
0
cs_Matt67 Messages postés 549 Date d'inscription samedi 6 septembre 2003 Statut Membre Dernière intervention 6 mars 2010 3
22 nov. 2005 à 18:33
bonsoir,



Tu veux quoi, le nombre de caracteres ou la taille du fichier ?

pour la taille du fichier un coup de fopen, fseek, fteel et fclose et le tourne est joué.

Matt...
0
cs_Matt67 Messages postés 549 Date d'inscription samedi 6 septembre 2003 Statut Membre Dernière intervention 6 mars 2010 3
22 nov. 2005 à 18:34
ftell pardon,

Matt...
0
Rejoignez-nous