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

avec Java Discussion :

Récupérer argument main


Sujet :

avec Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 229
    Points : 87
    Points
    87
    Par défaut Récupérer argument main
    Salut à tous !

    J'ai un petit problème au niveau de la récupération d'argument que j'écris lorsque je lance mon application.

    Comment faire pour récupérer un argument qui se trouve être un lien vers un répertoire ?

    ma ligne d'arguments : -d C:\projet\source C:\projet\destination

    l'argument "-d" est bien récupérer mais je sais qu'il faut doubler les \ pour que cela fonctionne.

    Merci par avance

  2. #2
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,


    Il n'y a rien de particulier à faire pour lire les paramètres. Il suffit de parcourir le tableau args de ton main().

    Il n'y a pas non plus de traitement à faire sur les \ : cela ne concerne que les chaines contenu dans le code source...


    a++

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 229
    Points : 87
    Points
    87
    Par défaut
    Je récupère divers arguments et comme tu l'as dit, je parcours mon tableau args.

    Cependant voici un exemple de comment je récupère tout cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    for (int i=0; i<args.length; i++)
    {
        if ("-d".equals(args[i]))
       {
           //traitement
       }
    }
    Ma question se porte sur le "-d".equals(args[i]), comment récupérer mon chemin de répertoire de cette manière là ?

  4. #4
    Invité
    Invité(e)
    Par défaut
    Salut,

    Dans ce cas tu dois toujours avoir un chemin après ton "-d", non ? en incrémentant ton i à la main tu peux accèder à l'arguments suivant et tester si c'est bien un chemin vers un répertoire.

  5. #5
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Ben le chemin est contenu dans l'argument suivant, soit args[i+1] à ce moment là de l'itération.

    Si tu as un certain nombre de paramètres à gérer, je te conseillerais plutôt de te tourner vers une API spécialement concus pour cela, comme CLI ou Args4j

    Tutoriel : Comparaison de Jakarta Commons CLI et Args4j

    a++

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 229
    Points : 87
    Points
    87
    Par défaut
    Citation Envoyé par George7 Voir le message
    Salut,

    Dans ce cas tu dois toujours avoir un chemin après ton "-d", non ? en incrémentant ton i à la main tu peux accèder à l'arguments suivant et tester si c'est bien un chemin vers un répertoire.
    Oui c'est exactement ça, mais tu dis "tester si c'est bien un chemin vers un répertoire", il y a une méthode pour cela ?

    Merci

    Citation Envoyé par adiGuba Voir le message
    Ben le chemin est contenu dans l'argument suivant, soit args[i+1] à ce moment là de l'itération.

    Si tu as un certain nombre de paramètres à gérer, je te conseillerais plutôt de te tourner vers une API spécialement concus pour cela, comme CLI ou Args4j

    Tutoriel : Comparaison de Jakarta Commons CLI et Args4j

    a++
    Ok merci je vais explorer cette piste également.

  7. #7
    Invité
    Invité(e)
    Par défaut
    Peut-être avec cette méthode File.isDirectory()

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 229
    Points : 87
    Points
    87
    Par défaut
    Parfait, ça fonctionne

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

Discussions similaires

  1. Récupérer la main sur un process Runtime
    Par Mayhem555 dans le forum Général Java
    Réponses: 4
    Dernier message: 28/10/2011, 12h35
  2. java/XML arguments main
    Par crypto dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 28/04/2008, 15h48
  3. programme fork, récupèrer la main sur le terminal [facile]
    Par fantomasmusic dans le forum POSIX
    Réponses: 6
    Dernier message: 20/12/2007, 14h27
  4. [CF1][VB.NET] Récupèrer arguments de la ligne de commande
    Par azerty25 dans le forum Windows Mobile
    Réponses: 5
    Dernier message: 01/11/2006, 20h47
  5. [PowerBuilder] Récupérer la main sur une fenêtre modale
    Par jpdar dans le forum Powerbuilder
    Réponses: 3
    Dernier message: 12/06/2006, 14h21

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