IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Problème upload fichier texte vide


Sujet :

C#

  1. #1
    Membre régulier
    Inscrit en
    Décembre 2006
    Messages
    256
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 256
    Points : 70
    Points
    70
    Par défaut Problème upload fichier texte vide
    Bonjour,

    Dans mon application j'ai besoin d'uploader un fichier txt dans lequel j'écris des informations diverses puis ensuite je l'envoi sur mon serveur FTP.
    Quand je vais sur mon serveur FTP j'ai bien mon fichier qui apparait mais quand je l'ouvre il n'y a rien dedans, pourtant au niveau de la taille j'ai par exemple 13 octets. Si j'attends 2 minutes et que j'essaye de le ré ouvrir le fichier n'est plus vide, il y a bien le texte à l'intérieur.
    Pour essayer de trouver le problème j'ai appelé directement ma fonction qui upload pour mettre un fichier sur mon serveur FTP et sa fonctionne parfaitement, le fichier contient des informations à l'intérieur.

    Voici ma méthode d'upload :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    public static void UploadFTP(string login, string password, string pathFichierTransfert, string pathFTP, bool asciiEncoding)
            {
                System.Net.WebClient wc = null;
     
                try
                {
                    wc = new System.Net.WebClient();
     
                    // Identification sur le serveur ftp
                    wc.Credentials = new System.Net.NetworkCredential(login, password);
     
                    if (asciiEncoding)
                    {
                        wc.Encoding = System.Text.ASCIIEncoding.ASCII;
                    }
     
                    wc.UploadFile(pathFTP, System.Net.WebRequestMethods.Ftp.UploadFile, pathFichierTransfert);
                }
                catch (Exception ex)
                {
                    throw new ExceptionRegle(String.Format("L'envoi du fichier de déversement sur le serveur FTP {0} a échoué. Détail de l'exception : {1}", pathFTP, ex.Message));
                }
                finally
                {
                    if (wc != null)
                    {
                        wc.Dispose();
                        wc = null;
                    }
                }
            }
    Voici une parti du code qui est déclenché pour l'envoi de mon fichier sur le serveur FTP

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    using (StreamReader sr = new StreamReader(@"C:\Program Files\GestAMI\Agence.txt"))
                    {
                        while (!sr.EndOfStream)
                        {
                            lstAgence.Add(sr.ReadLine());
                        }
                        lstAgence.Add(_devisRow.numeroDevis.Trim());
                    }
     
                    using (StreamWriter sw = new StreamWriter(@"C:\Program Files\GestAMI\Agence.txt"))
                    {
                        foreach (string ligne in lstAgence)
                        {
                            sw.WriteLine(ligne);
                        }
                        sw.Flush();
                    }
     
                    using (StreamReader sr = new StreamReader(@"C:\Program Files\GestAMI\Filiale.txt"))
                    {
                        lstAgence.Clear();
                        while (!sr.EndOfStream)
                        {
                            lstAgence.Add(sr.ReadLine());
                        }
                        lstAgence.Add(_devisRow.numeroDevis.Trim());
                    }
     
                    using (StreamWriter sw = new StreamWriter(@"C:\Program Files\GestAMI\Filiale.txt"))
                    {
                        foreach (string ligne in lstAgence)
                        {
                            sw.WriteLine(ligne);
                        }
                        sw.Flush();
                    }
     
                    #endregion
                    Utilitaires.UploadFTP(Properties.Settings.Default.UtilisateurBaseFiliale.ToString(), Properties.Settings.Default.PasswordBaseFiliale, @"C:\Program Files\GestAMI\Agence.txt", Properties.Settings.Default.ftpDevis + "/Agence.txt", true);
                    Utilitaires.UploadFTP(Properties.Settings.Default.UtilisateurBaseFiliale.ToString(), Properties.Settings.Default.PasswordBaseFiliale, @"C:\Program Files\GestAMI\Filiale.txt", Properties.Settings.Default.ftpDevis + "/Filiale.txt", true);
    Mes fichiers sont bien uploader mais il n'y a rien dedans, sauf au bout de 2 minutes j'arrive a lire le contenu.

    Je vous remercie par avance

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 19
    Points : 23
    Points
    23
    Par défaut
    Je ne vois pas de problème dans l'algo.

    Peut-être un délai extrêmement long à l'écriture vu que tu peut ouvrir le fichier après 2 minutes.

  3. #3
    Membre régulier
    Inscrit en
    Décembre 2006
    Messages
    256
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 256
    Points : 70
    Points
    70
    Par défaut
    Oui mais c'est quand même bizarre que pour ecrire 13 octets de données sa soit aussi long, sa me fait pareil pour un document word.

  4. #4
    Membre régulier
    Inscrit en
    Décembre 2006
    Messages
    256
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 256
    Points : 70
    Points
    70
    Par défaut
    Je viens de voir quelque chose, quand j'upload mon fichier sous un nouveau nom sur mon FTP, les modifications du fichier sont prises en compte directement. Mais si je met le même nom il faut que j'attende 2 min avant de les voir apparaitre.

  5. #5
    Membre régulier
    Inscrit en
    Décembre 2006
    Messages
    256
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 256
    Points : 70
    Points
    70
    Par défaut
    Bon, je crois que j'ai trouvé la solution, en effet sur mon serveur ftp, au niveau du gestionnaire des services IIS, il me m'était accès refusé au niveau de mon répertoire, j'ai remis les droits correctement et la tout fonctionne parfaitement.

    Le seul truc que je comprends pas c'est comment il arrivait a écrire sur le ftp sachant que 'il avait l'accès refusé.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Upload] Problème Upload Fichiers via html
    Par Typhon dans le forum Langage
    Réponses: 3
    Dernier message: 11/02/2007, 11h52
  2. [VB.NET]Problème lecture fichier texte
    Par zouhib dans le forum Windows Forms
    Réponses: 2
    Dernier message: 29/05/2006, 16h05
  3. Problème Génération fichier texte
    Par veenie dans le forum Oracle
    Réponses: 5
    Dernier message: 18/05/2006, 11h21
  4. problème ouverture fichier texte
    Par ice-t69 dans le forum Langage
    Réponses: 4
    Dernier message: 07/11/2005, 19h29
  5. Problème avec fichier texte
    Par jpdelx dans le forum ASP
    Réponses: 7
    Dernier message: 13/11/2003, 13h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo