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

API standards et tierces Java Discussion :

Comment ouvrir un fichier?


Sujet :

API standards et tierces Java

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2006
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2006
    Messages : 83
    Points : 51
    Points
    51
    Par défaut Comment ouvrir un fichier?
    Salut à tous!

    Voila j'ai un petit souci dont je n'arrive pas à me sortir.
    J'ai une petite interface graphique dans laquelle j'ai une JList contenant des noms de fichiers (fichier xml pour être plus précis).

    Je voudrais, lorsque je clic sur un des noms de fichiers, pouvoir, en cliquant sur un bouton "Ouvrir" par exemple, ouvrir ce fichier dans une application type bloc notes sous windows.
    Le problème est qu'il faudrait que ceci marche sous Windows et sous Linux (en gros que ce soit portable).

    Pour l'instant je n'ai pas trouvé de solutions. J'ai cherché un peu sur Internet, j'ai vu qu'il y avait une API qui s'appelle JDIC mais je n'ai pas vraiment compris comment on l'utilisait/comment elle marchait.

    Voila. J'espere que tout le monde a réussi à me comprendre!

    Est-ce que quelqu'un a une idée? Meme si c'est une toute autre piste, je suis preneur

    Merci d'avance!

  2. #2
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 636
    Points : 5 943
    Points
    5 943
    Par défaut
    L'api JDIC permet d'ouvrir un fichier avec l'application associée par le système.
    Dans ton cas la méthode edit() de la classe Desktop me parait la plus appropriée.
    Je ne répondrai à aucune question technique par MP.

    Pensez aux Tutoriels et aux FAQs avant de poster (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
    Enfin, quand une solution a été trouvée à votre problème
    pensez au tag

    Cours Dvp : http://ydisanto.developpez.com
    Blog : http://yann-disanto.blogspot.com/
    Page perso : http://yann-disanto.fr

  3. #3
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2006
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2006
    Messages : 83
    Points : 51
    Points
    51
    Par défaut
    Merci de ta réponse.

    Je l'ai téléchargé mais je ne sais pas du tout comment faire pour l'installer.

    Je précise que je suis sous Linux mais que je suis loin d'en être un expert : je suis forcé de bosser sous Linux à cause de mon employeur! lol (En meme temps je le remercie, ca m'apprend d'autres choses... )

  4. #4
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 636
    Points : 5 943
    Points
    5 943
    Par défaut
    Il n'est pas interdit de chercher un peu . Sur le site officiel :
    https://jdic.dev.java.net/documentation/README.html
    JDIC Frequently Asked Questions (FAQ)

    [troll inside]
    Citation Envoyé par jason69
    je suis forcé de bosser sous Linux à cause de mon employeur!
    on dit : "J'ai la chance de travailler sous linux grâce à mon employeur"
    [/troll inside]
    Je ne répondrai à aucune question technique par MP.

    Pensez aux Tutoriels et aux FAQs avant de poster (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
    Enfin, quand une solution a été trouvée à votre problème
    pensez au tag

    Cours Dvp : http://ydisanto.developpez.com
    Blog : http://yann-disanto.blogspot.com/
    Page perso : http://yann-disanto.fr

  5. #5
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2006
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2006
    Messages : 83
    Points : 51
    Points
    51
    Par défaut
    Ca y est je suis arrivé à l'utiliser.
    En fait, dans ce que j'ai téléchargé il y avait un jar (jdic.jar). Il a juste fallut que j'ajoute ce jar au projet (sous eclipse, rien de plus simple! ).

    Maintenant j'ai un autre souci.
    Lorsque j'utilise la fonction edit, j'ai une exception qui me dit que le fichier n'est pas editable.

    Voici mon code (juste la partie qui pose problème, je ne mets pas toute la classe) :

    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
    this.jButtonOuvrir = new JButton();
    this.jButtonOuvrir.setText("Ouvrir");
    this.jButtonOuvrir.setVisible(true);
    this.jButtonOuvrir.setMaximumSize(new Dimension(150, 15));
    this.jButtonOuvrir.addActionListener(new java.awt.event.ActionListener() {
    	public void actionPerformed(java.awt.event.ActionEvent e) {
    		// On récupère le nom du fichier qui a été ouvert :
    		String nomFichier = list.getSelectedValue().toString();
    		nomFichier = nomDossier + nomFichier;
                    // Je suis sur que le fichier existe, car ce qui s'affiche avec ce qui suit est
                    // ce que je devrais obtenir
    		System.out.println("nomfichier = " + nomFichier);
    		File f = new File (nomFichier);
    		try {
    			Desktop.edit(f);
    		}
    		catch (DesktopException ex) {
    			ex.printStackTrace();
    		}
    	}
    });
    Et voici l'exception que je récupère :
    org.jdesktop.jdic.desktop.DesktopException: The given file is not editable.

    Est-ce que quelqu'un sait de quoi cela pourrait venir? Est ce que ca pourrait être un problème de droit ou quelque chose comme ca sachant que mon fichier existe bien?

    Merci d'avance

  6. #6
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 636
    Points : 5 943
    Points
    5 943
    Par défaut
    La méthode edit() ouvre le fichier spécifié avec l'éditeur associé par le système, ton erreur doit venir du fait qu'il n'y a pas d'éditeur associé au fichier sur ton système.

    Tu peux essayer la méthode open() qui lance le fichier avec l'application associée par le système (attention, car sous Windows il me semble que, par défaut, l'application associée aux fichiers XML est Internet Explorer et non un éditeur de texte).
    Je ne répondrai à aucune question technique par MP.

    Pensez aux Tutoriels et aux FAQs avant de poster (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
    Enfin, quand une solution a été trouvée à votre problème
    pensez au tag

    Cours Dvp : http://ydisanto.developpez.com
    Blog : http://yann-disanto.blogspot.com/
    Page perso : http://yann-disanto.fr

  7. #7
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2006
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2006
    Messages : 83
    Points : 51
    Points
    51
    Par défaut
    La méthode open() ne marche pas non plus.

    J'ai modifié le code, j'ai essayé avec un simple fichier texte.

    J'ai essayé Desktop.edit (new File ("/home/fichier.txt")); et j'ai eu la même exception qu'avant (alors que je suis sur que le fichier existe).

    Et j'ai essayé Desktop.open (new File ("/home/fichier.txt")); et cette fois j'ai eu cette exception :

    org.jdesktop.jdic.desktop.DesktopException: Failed to launch the associated application with the specified file.

Discussions similaires

  1. [VBA] Word - Comment ouvrir un fichier excel
    Par le_sonic dans le forum VBA Word
    Réponses: 5
    Dernier message: 28/12/2005, 09h33
  2. Réponses: 3
    Dernier message: 12/10/2005, 13h53
  3. comment ouvrir un fichier excel ?
    Par vdavid1982 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 13/07/2005, 12h05
  4. Réponses: 9
    Dernier message: 20/06/2005, 16h47
  5. Comment ouvrir un Fichier d'aide perso
    Par NoBru dans le forum Access
    Réponses: 4
    Dernier message: 09/12/2004, 08h43

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