thmatew
Messages postés68Date d'inscriptionjeudi 16 juin 2005StatutMembreDernière intervention19 janvier 2010
-
30 mars 2006 à 10:56
thmatew
Messages postés68Date d'inscriptionjeudi 16 juin 2005StatutMembreDernière intervention19 janvier 2010
-
31 mars 2006 à 16:36
Bonjour,
Comme dit dans le sujet: j'ai un probleme d'écriture dans un fichier.
Je recoit le nom du fichier d'un client distant, le fichier se crée, mai il y a un probleme pour l'écriture les fonctions ne me retourne pas de code d'erreur mais a la fin de la reception et quand le programme me dit que le fichier a été écrit, les fichiers récus sont vide, voici la partie du code qui ne fonctionne pas :
do
{
printf("i=%d\n",i);
//reception du tampon
if(i==0)
{
//reception du nom du fichier
test=recv(socket_travail,nom_fich,strlen(nom_fich),0);
puts("Reception du nom de fichier");
if(test!=SOCKET_ERROR)
{
nom_fich[test]='\0';
puts(nom_fich);
tt=fopen(nom_fich,"w+"); //Ouverture du fichier
if(tt==NULL)
{
Envoi("fichier non ouvert",socket_travail);
Fin("fichier non ouvert");
}
else
{
Envoi("§",socket_travail); //Accusé de reception pour le client
}
}
else
{
Envoi("Erreur de reception",socket_travail);
Fin("ERREUR DE RECEPTION");
}
}
else
{
Envoi("§",socket_travail); //Accusé de reception pour le client
test=recv(socket_travail,buff,strlen(buff),0);
printf("test=%d\n",test);
if(test!=SOCKET_ERROR) //si pas d'erreur
{
puts("APRES RECV\n");
if(test!=0)
{
buff[test]='\0';
compte=fprintf(tt,"%s",buff); //fonction pour écrire dans le fichier: PROBLEME
if(compte<0) Fin("fichier non ecrit");
else puts("fichier écrit");
thmatew
Messages postés68Date d'inscriptionjeudi 16 juin 2005StatutMembreDernière intervention19 janvier 2010 31 mars 2006 à 16:36
Merci beaucoup d'avoir répondu a ma question.
En effet, j'ai fait l'erreur de fermer mes fichiers a la fin de mon programme, mais maintenant il n'y plus aucun probleme.