Lire d'un fichier texte en c++

cs_sny2009 Messages postés 28 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 1 mai 2012 - 2 mai 2011 à 15:11
cs_LA_Tupac Messages postés 305 Date d'inscription jeudi 29 avril 2004 Statut Membre Dernière intervention 18 janvier 2012 - 26 mai 2011 à 21:20
Bonjour,
Je rencontre un problème avec la fonction fread
Je veux lire un nombre de caractère N de fichier texte voila le code :

nb_car_lu=fread_s(this->tampon,2*N,sizeof(unsigned char),N,this->pg_source); cout<<nb_car_lu<<endl;

il m'affiche nb_car_lu=0

D'avance merci pour votre aide

2 réponses

pop70 Messages postés 181 Date d'inscription mardi 6 avril 2010 Statut Membre Dernière intervention 7 janvier 2012 10
2 mai 2011 à 22:22
Bonjour,
en essayant avec read() peut-être ? Parce q'ici je ne comprends pas bien ce que représente le "this", c'est dans une implémentation de classe que ce trouve ce code ?

En tout cas, voici un exemple d'une solution pour lire N caractères dans un fichier texte:

#include 
#include <fcntl.h>

int main()
{
int N 4, fichier open("fichier_a_lire.txt", O_RDONLY);
char *contenu;
contenu = (char*)malloc(N + 1); // contiendra N éléments lu + 1 caractère (celui de fin)
for (int i 0; i < N + 1; i++) { contenu[i] 0;}
read(fichier, contenu, N); // lit N caractère dans le fichier
printf("Contenu : %s",contenu);
free(contenu);
close(fichier);
    return 0;
}



Cordialement,
Pop70

Pop70
0
cs_LA_Tupac Messages postés 305 Date d'inscription jeudi 29 avril 2004 Statut Membre Dernière intervention 18 janvier 2012 1
26 mai 2011 à 21:20
salut. C'est bien vrai ça. Et si en plus on utilisait la stl et le c++

#include <fstream>
using namespace std;

char *buffer;
int N=4;
ifstream MonFichier;
MonFichier.open("fichier.txt");
MonFichier.read(buffer, N);
MonFichier.close();
0
Rejoignez-nous