Gestion de fichier pdf [Résolu]

cs_lilj 205 Messages postés dimanche 13 décembre 2009Date d'inscription 1 avril 2012 Dernière intervention - 7 nov. 2010 à 13:20 - Dernière réponse :  Utilisateur anonyme
- 9 nov. 2010 à 21:16
bonjour,

est-il possible de travailler avec des "uploads" de fichiers un peu comme en développement web ?
Je m'explique :
Mon application VB 2010 doit permettre de choisir un fichier. puis de copier se fichier dans un dossier spécifique de mon programme. Enfin, lorsque l'utilisateur veut consulter ce fichier, le programme ouvre le fichier...
Je sais qu'il faut utiliser un openfiledialog mais sans plus...
On pourrait m'aider s'il vous plaît ?

Il s'agit d'un fichier pdf.. de plus, comment vérifier qu'il s'agit bien d'un fichier de ce format ?

Merci
Afficher la suite 

5 réponses

Répondre au sujet
Utilisateur anonyme - 8 nov. 2010 à 20:00
+3
Utile
Re,
Dans ce cas tu fais :
        Dim dlg As New OpenFileDialog
        With dlg
            .Filter = "Fichiers PDF|*.pdf"
            .InitialDirectory = My.Computer.FileSystem.SpecialDirectories.MyDocuments
            .ShowDialog()
        End With
        'copie du fichier dans le dossier de ton application
        My.Computer.FileSystem.CopyFile(dlg.FileName, Application.StartupPath & "" & _
            dlg.FileName.Substring(dlg.FileName.LastIndexOf("") + 1))


Dans ce cas, la boite de dialogue ouvrira le dossier Mes Documents (InitialDirectory) mais rien ne t'empêche de mémoriser le dossier que l'utilisateur aura choisi une première fois dans ton application et de l'indiquer en InitialDirectory.

A bientôt.
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Utilisateur anonyme
Utilisateur anonyme - 7 nov. 2010 à 15:41
0
Utile
Salut,
Je suppose que les fichiers pdf sont distants et que ton application doit tous les télécharger.

Dans ce cas tu peux faire un truc du genre :

        'déclaration d'un pdf à télécharger (on peut faire une boucle s'il y en a plusieurs)
        Dim monpdf As String = "http://www.ratp.info/picts/miniplan/metro120x84.pdf"
        'téléchargement du pdf
        My.Computer.Network.DownloadFile(monpdf, monpdf.Substring(monpdf.LastIndexOf("/") + 1))


Une fois que le ou les pdf ont été téléchargés, on initialise une boite de dialogue filtrante :


        'préparation et ouverture de la boite de dialogue
        Dim dlg As New OpenFileDialog
        With dlg
            .Filter = "Fichiers PDF|*.pdf"
            .InitialDirectory = Application.StartupPath
            .ShowDialog()
        End With
        'ouverture du pdf
        Process.Start(dlg.FileName)
Commenter la réponse de Utilisateur anonyme
cs_lilj 205 Messages postés dimanche 13 décembre 2009Date d'inscription 1 avril 2012 Dernière intervention - 8 nov. 2010 à 06:22
0
Utile
Merci mais il ne s'agit pas de le telecharger mais de copier et deplacer un fichier sur un pc local. Ex la personne possede un pdf ds un dossier. Ma boitr de dialog lui demande un fichier pdf puis copie et deplace ce fichier dans un dossier precis pr ke program puisse l'appeler plus tard car en gardant just l'adresse du pdf si lutilisateur le deplace cela va generer des erreurs dans mon app
Commenter la réponse de cs_lilj
cs_lilj 205 Messages postés dimanche 13 décembre 2009Date d'inscription 1 avril 2012 Dernière intervention - 9 nov. 2010 à 15:15
0
Utile
Merci pour ton code mais concernant la ligne
 'copie du fichier dans le dossier de ton application
        My.Computer.FileSystem.CopyFile(dlg.FileName, Application.StartupPath & "" & _

            dlg.FileName.Substring(dlg.FileName.LastIndexOf("") + 1))


Application.StartupPath : dossier de ton application ?? C'est à dire ?
FileName.LastIndexOf("") + 1) : A quoi sert cette ligne ? stp

Merci encore pour ces informations !!
Commenter la réponse de cs_lilj
Utilisateur anonyme - 9 nov. 2010 à 21:16
0
Utile
Salut,

A quoi sert cette ligne ? stp


J'ai fait une erreur quand j'ai mis en forme désolé.
C'est la même ligne mais coupée en 2 avec le symbole _
On l'utilise pour couper les longues lignes.

My.Computer.FileSystem.CopyFile(dlg.FileName, Application.StartupPath & "" & dlg.FileName.Substring(dlg.FileName.LastIndexOf("") + 1))


CopyFile (chemin et fichier à déplacer , nouveau chemin et nom du fichier déplacé)

chemin et fichier à déplacer => dlg.Filename (choisi par l'utilisateur)
nouveau chemin => Application.StartupPath (chemin de ton application)
nom du fichier déplacé => dlg.FileName.Substring(dlg.FileName.LastIndexOf("") + 1)

substring ne garde que a partir de la dernière barre oblique détectée dans le string du fichier choisi par l'utilisateur.

Bonne soirée.
Commenter la réponse de Utilisateur anonyme

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.