NAVIE
Messages postés23Date d'inscriptionsamedi 1 janvier 2005StatutMembreDernière intervention23 avril 2006
-
30 mars 2005 à 10:13
meech
Messages postés209Date d'inscriptionvendredi 11 avril 2003StatutMembreDernière intervention14 août 2007
-
30 mars 2005 à 17:35
Bonjour, j'écris au sujet d'un programme que j'ai créé pour lire un fichier.
Celui-ci est bien compilé mais il ne peut pas lire un fichier sans que je sache pourquoi.
En effet quand il entame la procédure pour lire il affiche le message d'erreur prévu pour.
Voici le code source:
#include
#include <conio.c>
using namespace std;
int main(int argc, char *argv[])
{
FILE * file;
cout<<"[?]Ouverture du fichier TSET.txt du répertoire C:/\a"<<endl;
meech
Messages postés209Date d'inscriptionvendredi 11 avril 2003StatutMembreDernière intervention14 août 2007 30 mars 2005 à 17:29
Salut,
La ligne ci-dessous est clairement en cause :
if((fread(Buffer, sizeof(Buffer), 10, file))!= 10)
Essaie plutôt un truc de ce genre :
int lecture;
while (lecture = fread(Buffer, sizeof(Buffer), 1, file))
{
printf("%s", Buffer);
}
En fait, la variable lecture devient égale à 0 lorsqu'il n'y a plus rien à lire. Celle-ci demeure égale à 1 tant qu'elle trouve de quoi lire dans le fichier texte.
meech
Messages postés209Date d'inscriptionvendredi 11 avril 2003StatutMembreDernière intervention14 août 2007 30 mars 2005 à 17:35
CLETER -> je t'assure que ça marche sous Win32, je procède toujours ainsi plus facilement porter mon code entre Linux/Windows.
NAVIE -> Aide sur fread http://www.infini-fr.com/Sciences/Informatique/Langages/Imperatifs/C/Api/fread.html. Il est bien précisé que le résultat peut être inférieur au nombre de blocs initialement demandé.