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 de casse en C et Eclipse


Sujet :

C

  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2007
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 59
    Par défaut Problème de casse en C et Eclipse
    Salut tt le monde,
    j'ai implémenté un plugin pour Eclipse qui fait appel à un programme en C (.exe) pour analyser des programmes Cobol.

    Le programme C analyse le programme Cobol en entrée et récupère les fichiers appelés par ce programme (instruction "COPY nom_fichier."). ce programme reçoit également un repertoire comme parametre qui représente l'emplacement où chercher les fichier appelés. Après, les résulats de l'analyse sont affichés dans Eclipse.
    En exécutant tt ça sous Windows (insensible à la casse) et sachant le système de ressources d'Eclipse est sensible à la casse, j'ai le problème suivant:

    Le programme C (.exe) s'éxécute alors sous windows, il effectue la recherche des fichiers appelés, les trouve et donne les résultats à Eclipse pour les trouver et les afficher. Dc, sous Win, le fichier "TOTO.cob" est égal à "TOTO.COB" mais pour Eclipse c'est deux fichiers sont différents.

    Exemple:
    Le répertoire de recherche= "c:\copy"
    Dans le programme Cobol, on trouve: COPY TOTO. (nous remarquons que ya pas d'extension). sachant que le fichier se nomme réelement "TOTO.cob" sur le disque.

    Le programme C prend le texte "TOTO" et le recherche dans "c:\copy" en lui combinant les extensions suivantes (Dans l'ordre):
    "COB", "CPY", "cob", "cpy","".
    le premier test lui permettera de trouver le fichier sous Wind et donne le résultat suivant à Eclipse: "c:\copy\TOTO.COB". Mais Eclipse ne m'affiche pas le fichier sur Eclipse car il ne le retrouve pas!!

    Comment puis je faire (En C) pour retrouver le nom du fichier réel??
    On m'a suggéré d'utiliser un "file handle" (voir le lien suivant: http://msdn.microsoft.com/en-us/libr...89(VS.85).aspx) mais je sais pas compris comment et je sais pas aussi si ça marche?
    sachant que je travaille avec du C pur!!!

    Les conseils et idées sont les bienvenues.

    Merci d'avance
    Bon courage à tous.

  2. #2
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    507
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mai 2006
    Messages : 507
    Par défaut
    Bonjour,
    Citation Envoyé par mina86 Voir le message
    Le programme C prend le texte "TOTO" et le recherche dans "c:\copy" en lui combinant les extensions suivantes (Dans l'ordre):
    "COB", "CPY", "cob", "cpy","".
    Ne serait-il pas possible de faire l'inverse ? C'est-à-dire, au lieu de composer les noms de fichiers potentiels, de lister ceux présents sur le disque ? Autrement dit, au lieu de tester si un fichier existe sur le disque en créant son nom, récupère les fichiers qui sont dans le répertoire et compare les à ceux que tu cherches...

    Cependant, je ne suis pas certains qu'il existe des fonctions portables en "C pur" qui permettent de lister le contenu d'un répertoire... Sinon c'est faisable avec les fonctions Windows... Cf MSDN.

  3. #3
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 393
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 393
    Par défaut
    Cette histoire sur les file handles, c'est du grand n'importe quoi.

    Par contre, tu peux chercher le fichier dans le répertoire, avec (sous Windows) FindFirstFile()/FindNextFile()/FindClose().
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  4. #4
    Membre confirmé
    Inscrit en
    Janvier 2007
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 59
    Par défaut
    merci pour vos réponses.
    je vais essayer se ke je peux faire!
    Le programme en C est un projet OpenSource. donc je dois modifié un peu les sources. on utilise dans le code stat.h pour retrouver les fichiers.
    A quoi sert exactement cette librairie?

    Cordialement

Discussions similaires

  1. problème de touches du clavier sous eclipse
    Par isa21493 dans le forum Eclipse Java
    Réponses: 6
    Dernier message: 22/05/2008, 09h22
  2. Problème de casse dans une recherche
    Par lipao17 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 06/07/2005, 10h55
  3. Problème de démarrage Tomcat 5 sous Eclipse 3
    Par Didier wampas dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 15/12/2004, 17h26
  4. problème d'execution de JSP avec eclipse - TOMCAT
    Par Staron dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 14/12/2004, 21h48
  5. recherche Xpath: problème de casse (majuscule/minuscule)
    Par alexandre54 dans le forum XSL/XSLT/XPATH
    Réponses: 9
    Dernier message: 29/07/2003, 10h42

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