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

Java Discussion :

Java et les fichiers pdf


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Inscrit en
    Février 2010
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2010
    Messages : 110
    Par défaut Java et les fichiers pdf
    Salut tous,

    Je veux appeler un document pdf lors d'un simple clic sur un bouton de mon application implémentée en java.
    Est ce qu'il y a quelqu'un qui peut m'aider? Comment faire SVP??

    Merci d'avance..

  2. #2
    Membre Expert
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Par défaut
    salut.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    String[] cmd= {"chemin_complet_exécutable_acrobat_reader  \\  comme séparateur","ton_fichier.pdf"};
    Runtime.getRuntime().exec(cmd);

  3. #3
    Membre Expert Avatar de Uther
    Homme Profil pro
    Tourneur Fraiseur
    Inscrit en
    Avril 2002
    Messages
    4 690
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Tourneur Fraiseur

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 690
    Par défaut
    Si tu veux ouvrir le fichier avec l'application par défaut du système et que tu as une version de JavaSE 6, ou plus, la meilleure solution est d'utiliser la classe Desktop.

    Tu peux également utiliser la bibliothèque JDIC(bibliothèque native)

    Sinon il te faut utiliser Runtime.exec() pour appeller les commandes systèmes "cmd /c start", "open", "xdg-open" suivant ton système (respectivement windows, macos x et linux).

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    476
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 476
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Si tu veux ouvrir le fichier avec l'application par défaut du système et que tu as une version de JavaSE 6, ou plus, la meilleure solution est d'utiliser la classe Desktop.
    J'ai essayé par curiosité avec un pdf, un doc ou un txt, mais aucun résultat.
    Malgré que j'obtienne true true en sortie...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public static void main(String[] args) throws IOException {
    System.out.println(Desktop.isDesktopSupported());		System.out.println(Desktop.getDesktop().isSupported(Action.OPEN));
     
    Desktop.getDesktop().open(new File("C:\\a.txt"));
    }

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    476
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 476
    Par défaut
    Si tu veux ouvrir le fichier avec l'application par défaut du système et que tu as une version de JavaSE 6, ou plus, la meilleure solution est d'utiliser la classe Desktop.
    J'ai essayé par curiosité avec un pdf, un doc ou un txt, mais aucun résultat.
    Malgré que j'obtienne en sortie :
    true
    true

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    public static void main(String[] args) throws IOException {
    System.out.println(Desktop.isDesktopSupported());
    System.out.println(Desktop.getDesktop().isSupported(Action.OPEN));
     
    Desktop.getDesktop().open(new File("C:\\a.txt"));
    }
    Pour info, je suis sur Win XP SP2 32-bits.

  6. #6
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    C'est pourtant comme ça que ça marche. Au point où tu en es, je te conseille :
    - De vérifier que c'est bien ce programme que tu lances (ça donne quoi si tu ajoutes System.out.println("zorglub") ?)
    - De vérifier que tu as un fichier a.txt et non pas a.txt.txt à la racine de C:
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  7. #7
    Membre chevronné
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    476
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 476
    Par défaut
    Citation Envoyé par thelvin Voir le message
    C'est pourtant comme ça que ça marche. Au point où tu en es, je te conseille :
    - De vérifier que c'est bien ce programme que tu lances (ça donne quoi si tu ajoutes System.out.println("zorglub") ?)
    - De vérifier que tu as un fichier a.txt et non pas a.txt.txt à la racine de C:
    Ca m'aide pas trop... Je pense que l'api doit être buggé selon les versions des OS, l'antivirus, les firewalls ou encore les applications opèrant sur les fichiers.
    Sinon le fichier existe bel et bien.

    Pour le montrer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    System.out.println(Desktop.isDesktopSupported());
    System.out.println(Desktop.getDesktop().isSupported(Action.OPEN));
    System.out.println(new File("C:\\a.txt").exists());
    Desktop.getDesktop().open(new File("C:\\a.txt"));
    J'obtiens 3 true maintenant ...

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

Discussions similaires

  1. HibernateUtil.java et les fichiers de Mapping
    Par sup dans le forum Hibernate
    Réponses: 4
    Dernier message: 17/09/2007, 11h14
  2. Composant pour gérer les fichiers PDF
    Par BXDSPORT dans le forum Delphi
    Réponses: 4
    Dernier message: 27/05/2007, 08h53
  3. Java et les fichiers
    Par gagalive dans le forum API standards et tierces
    Réponses: 6
    Dernier message: 07/07/2006, 07h15
  4. [C#] Authentification sur les fichiers Pdf
    Par ensisoft dans le forum ASP.NET
    Réponses: 14
    Dernier message: 04/05/2004, 12h10

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