Partage
  • Partager sur Facebook
  • Partager sur Twitter

problème ouverture de fichier

Sujet résolu
    4 décembre 2006 à 14:38:39

    bonjour,
    j'ai réalisé un programme qui accede a un fichier pour en lire les informations et les afficher dans une messagebox. mais j'ai un problème quand j'execute avec le logciel (C++ builder 6)tous fonctionne normalement mais quand je l'execute a partir du .exe la fenetre s'affiche mais vide!!!

    En faite c'est quand je test l'ouverture du fichier que sa ne marche pas le pointeur est toujours avec une valeur "NULL". donc c'est que le fichier ne s'ouvre pas. Pourtant il est bien dans le même répertoire que le .exe et il n'est pas ouvert.

    ai-je fait une erreur dans le code (ce qui ce peut vu que je débute)? ou quel peut être la raison de ce disfonctionnement?

    merci de votre aide.

    voici le code que j'ai fait:

    {
    int click;
    FILE* fichier = NULL;
    char chaine[TAILLE_MAX] = {0}// chaine qui va stocker la ligne
    char fichierComplet[10000]={0}; // chaine qui va stocker tous le fichier .txt 10000 caractères maximum
    if (click)
    {
    fichier = fopen("INTERFACE.txt", "r");   //ouverture du fichier .txt

        if (fichier != NULL)  //test pour savoir si le fichier c'est ouvert
        {
            while (fgets(chaine, TAILLE_MAX, fichier) != NULL) // On lit le fichier tant qu'on ne reçoit pas d'erreur                                                 (NULL)
            {
                strcat(fichierComplet, chaine); // On concatène chaine dans fichierComplet
            }

            fclose(fichier); //fermeture du fichier .txt
        }
    Application->MessageBox(fichierComplet,                   // on affiche l'ensemble du .txt dans une messagebox
                                                "aide",
                                                 MB_OK | MB_ICONINFORMATION);
    }
    }
    • Partager sur Facebook
    • Partager sur Twitter
      4 décembre 2006 à 15:17:43

      Citation : Pas de titre

      fopen("INTERFACE.txt", "r");



      Hum, quand tu vas dans le dossier de ton fichier "INTERFACE.txt", est-ce que le nom du fichier en question est "INTERFACE.txt" ou seulement "INTERFACE".

      En clair, tu vois lequel entre ces deux là :

      Image utilisateur

      Parce que si tu as appelé ton fichier INTERFACE.txt, alors il faut l'ouvrir en l'appelant comme ça :

      fopen("INTERFACE.txt.txt", "r");



      • Partager sur Facebook
      • Partager sur Twitter
        4 décembre 2006 à 15:44:50

        Merci Caleb de ta reponse mes le problème ne vient pas de la. en essayant de modifier avec ta solution j'ai compris d'ou venait le problème mais je ne sais pas comment le résoudre.

        en fait le .exe ne fonctionne que lorsqur'on le lance du dossier ou se trouve le fichier INTERFACE.txt. moi j'utilise un raccourci ce trouvant sur mon bureau et le programme cherche le fichier INTERFACE.txt sur le bureau et pas dans le fichier source.

        Comment faire pour qu'il le prenne dans le fichier source et qu'il ne le cherche pas la ou ce trouve le raccourci? sachant que je ne peut pas entrer le chemin d'acceè au fichier car c'est un programme ammener a être sur différent PC et donc différent chemin d'accès.

        par avance merci de votre aide
        • Partager sur Facebook
        • Partager sur Twitter
          4 décembre 2006 à 19:39:20

          Citation : toup

          bonjour,
          j'ai réalisé un programme qui accede a un fichier pour en lire les informations et les afficher dans une messagebox. mais j'ai un problème quand j'execute avec le logciel (C++ builder 6)tous fonctionne normalement mais quand je l'execute a partir du .exe la fenetre s'affiche mais vide!!!

          En faite c'est quand je test l'ouverture du fichier que sa ne marche pas le pointeur est toujours avec une valeur "NULL". donc c'est que le fichier ne s'ouvre pas. Pourtant il est bien dans le même répertoire que le .exe et il n'est pas ouvert.

          ai-je fait une erreur dans le code (ce qui ce peut vu que je débute)? ou quel peut être la raison de ce disfonctionnement?

          merci de votre aide.

          voici le code que j'ai fait:

          {
          int click;
          FILE* fichier = NULL;
          char chaine[TAILLE_MAX] = {0}// chaine qui va stocker la ligne
          char fichierComplet[10000]={0}; // chaine qui va stocker tous le fichier .txt 10000 caractères maximum
          if (click)
          {
          fichier = fopen("INTERFACE.txt", "r");   //ouverture du fichier .txt

              if (fichier != NULL)  //test pour savoir si le fichier c'est ouvert
              {
                  while (fgets(chaine, TAILLE_MAX, fichier) != NULL) // On lit le fichier tant qu'on ne reçoit pas d'erreur                                                 (NULL)
                  {
                      strcat(fichierComplet, chaine); // On concatène chaine dans fichierComplet
                  }

                  fclose(fichier); //fermeture du fichier .txt
              }
          Application->MessageBox(fichierComplet,                   // on affiche l'ensemble du .txt dans une messagebox
                                                      "aide",
                                                       MB_OK | MB_ICONINFORMATION);
          }
          }


          Attention, `click' n'est pas initialisé...
          • Partager sur Facebook
          • Partager sur Twitter
            4 décembre 2006 à 19:45:23

            Citation : toup

            Comment faire pour qu'il le prenne dans le fichier source et qu'il ne le cherche pas la ou ce trouve le raccourci? sachant que je ne peut pas entrer le chemin d'acceè au fichier car c'est un programme ammener a être sur différent PC et donc différent chemin d'accès.


            Clic droit sur le raccourcis > "ouvrir dans". Tous les raccourcis de programmes ont ce champ renseigné, car évidemment sinon ça marche pas.
            • Partager sur Facebook
            • Partager sur Twitter
              5 décembre 2006 à 10:25:07

              merci problème résolu.
              c'était bien un problème avec le "ouvrir dans".
              • Partager sur Facebook
              • Partager sur Twitter

              problème ouverture de fichier

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown