Accueil > Forum > > > > taille d'une chaine extraite d'un fichier
taille d'une chaine extraite d'un fichier
mardi 15 mars 2011 à 11:18:37 |
taille d'une chaine extraite d'un fichier

aymen87
|
Bonjour
Je suis en train de lire à partir d'un fichier ligne par ligne en utilisant fgets, mais avec fgets je doit introduire la longueur maximale de la chaine attendu.
par exemple 500:
fgets(answer_buff,500,intermFileRePtr)
Quand je veux récupérer la longueur exacte de la chaine extraite en utilisant strlen() ça m'affiche le 500 que j'ai introduit, apparemment le fgets place le '\0' d'une manière statique.
ce serait agréable si quelqu'un me donne une proposition pour que je puisse récupérer la longueur exacte.
Merci
cordialement
|
|
mardi 15 mars 2011 à 11:57:32 |
Re : taille d'une chaine extraite d'un fichier

CptPingu
|
Pourtant ça fonctionne bien.
Avec le code suivant, fgets place le 0 terminal correctement:
Code C/C++ :
#include <stdio.h>
#include <string.h>
int main(void)
{
FILE* pFile;
char mystring [100];
pFile = fopen ("myfile.txt", "r"); // "Kikoo" ecrit dans myfile.txt
if (pFile == NULL)
perror ("Error opening file");
else
{
fgets(mystring, 100, pFile);
puts(mystring);// Kikoo
printf("%i\n", strlen(mystring)); // Affiche bien 6 et pas 100
fclose (pFile);
}
return 0;
}
Tu as du faire une erreur ailleur dans ton code.
________________________________________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio
Merci d'utiliser Réponse acceptée si un post répond à votre question
|
|
mardi 15 mars 2011 à 13:44:15 |
Re : taille d'une chaine extraite d'un fichier

aymen87
|
Merci pour la réponse je v vérifier ,je compile sous Linux, ca fait une différence ?
|
|
mardi 15 mars 2011 à 14:03:53 |
Re : taille d'une chaine extraite d'un fichier

CptPingu
|
je compile sous Linux, ca fait une différence ?
Normalement, non.
PS: Je compile aussi sous Linux, avec gcc 4.5
________________________________________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio
Merci d'utiliser Réponse acceptée si un post répond à votre question
|
|
mardi 15 mars 2011 à 16:38:14 |
Re : taille d'une chaine extraite d'un fichier

ed73
|
Bonjour
fgets arrête la lecture de la chaîne soit lorsqu'il rencontre un \n soit lorsqu'il atteint la longueur maximale, 500 dans ton cas.
Si strlen te renvoie systématiquement 500 c'est parce que les lignes de ton fichier font plus de 500 caractères. Tu dois donc déclarer answer_buff avec une taille suffisante, c'est à dire supérieure à la taille de la plus grande ligne de ton fichier.
|
|
vendredi 18 mars 2011 à 09:58:04 |
Re : taille d'une chaine extraite d'un fichier

aymen87
|
Merci Ed73, desolé pour le retard de ce feedback , mais c'était plutôt parce que la déclaration de mon buffer était supérieure à 500 ;)
|
|
Cette discussion est classée dans : fichier, chaine, longueur, fgets, extraite
Répondre à ce message
Sujets en rapport avec ce message
Recherche chaine de caractères dans un fichier [ par Arkadius ]
Bon j'ai été bcp plus explicite et précis dans mon poste précédant mais l'envoie de celui-ci à foiré, alors en bref.J'écris des chaines de caractères
Urgent:supprimer une chaine d'un fichier [ par rene77 ]
Bonjour à tous, J'ai besoin de supprimer des chaines de caractères d'un fichier txt.Je travaille sous Builder et j'y arrive pas !!!OUINNNN OUINNNS'il
chaine de caractere de taille variable [ par habibdu70 ]
slt,savez vous comment modifier la taille d'une chaine de caractere ?par exemple si le nom de fichier fait 8 caracteres, je creai un fichier de 8 cara
recherche d'une chaine dans un fichier [ par ymlf ]
Problème au niveau du scanf()int recherche(char *chaine,char *FileName){ int i, k; char *tmp, *tab[50], *timer[20]; FILE *svf; svf=fopen(FileName,"r
lire un fichier txt ligne par ligne [ par lapinrose67 ]
Bonsoir,Je developpe un logiciel en C sous Linux, voila mon problème:Je dois lire un fichier texte ligne par ligne et placer chacune d'entre ellesdans
fichier txt [ par freerider76 ]
Bonjour je voudrais savoir comment faire pour changer une chaine de caractere dans un fichier txt, parce là je vois pas; en fait je pars comme ça et i
probleme recuperation donnée d'un fichier [ par poseidon2 ]
Salut.Pou resumer, je fais une DLL pour une MFC et je cherche a recuperer les 10 premiers caracteres d'un fichier.J'utilise "fgets" mais celui ci bug
chaine binaire ou non [ par Anacr0x ]
Voila mon problème : je recoit en temps normal par socket une chaine que j'afiche ds un edit, seulement, j'ai crée un systeme d'envoi de fichier qui p
nom de fichier variable [ par Orkblutt ]
salut,en gros voila ce ke je veux faire:char* chaine="Fichier.txt";ofstream fich(chaine);ceci ne me cré pas d'erreur de compil mais par contre le fich
nom de fichier variable [ par Orkblutt ]
salut,en gros voila ce ke je veux faire:char* chaine="Fichier.txt";ofstream fich(chaine);ceci ne me cré pas d'erreur de compil mais par contre le fich
Livres en rapport
|
Derniers Blogs
POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|