Manipulation de fichier

Résolu
Le newbie Messages postés 200 Date d'inscription mardi 17 octobre 2006 Statut Membre Dernière intervention 24 mars 2012 - 13 juin 2007 à 11:16
Le newbie Messages postés 200 Date d'inscription mardi 17 octobre 2006 Statut Membre Dernière intervention 24 mars 2012 - 13 juin 2007 à 13:57
Bonjour à tous.

Je voudrais savoir comment renommer et le nom et l'extension d'un fichier (de .doc en .rtf).
Sinon si vous connaissez un moyen simple et efficace de les convertir je suis aussi preneur.

Merci de votre aide à tous.

7 réponses

cs_niky Messages postés 168 Date d'inscription jeudi 28 juin 2001 Statut Membre Dernière intervention 18 octobre 2008 7
13 juin 2007 à 11:40
Salut,

Ce petit bout de code (peut-être pas le plus court) permet de retirer l'extension d'un fichier et de la remplacer par une autre (et par la même renommer le fichier) :

Sub Renommer(source As String, nouvelleExtension As String)
        Dim titre As String = System.IO.Path.GetFileNameWithoutExtension(source)
        Dim chemin As String = System.IO.Path.GetDirectoryName(source)

        Dim destination As String = System.IO.Path.Combine(chemin, titre) + "." + nouvelleExtension

        System.IO.File.Move(source, destination)
End Sub

A partir de là, un Renommer("c:\dossier\monfichier.doc", "rtf") déplace le fichier "c:\dossier\monfichier.doc" vers "c:\dossier\monfichier.rtf".
3
Le newbie Messages postés 200 Date d'inscription mardi 17 octobre 2006 Statut Membre Dernière intervention 24 mars 2012 2
13 juin 2007 à 11:18
Désolé j'ai oublié de préciser.
Je peux être en vb2003 ou en vb2005.

Merci de votre aide à tous.
0
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
13 juin 2007 à 11:24
Salut,
Name Source As Destination
mais je ne sais pas si c'est la meilleurs méthode en .NET.
En tout cas cela fonction nickel en VB6.
Pour la conversion... je ne sais pas

@+: Ju£i?n
Pensez: Réponse acceptée
0
drikce06 Messages postés 2237 Date d'inscription lundi 29 mai 2006 Statut Membre Dernière intervention 29 mai 2008 11
13 juin 2007 à 11:32
Salut, pour la conversion ouvrir le .doc et un saveas en .rtf.

 Drikce 06 (Nouveau !!! Forum Exclusivement Office Et VBA By Mortalino)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Le newbie Messages postés 200 Date d'inscription mardi 17 octobre 2006 Statut Membre Dernière intervention 24 mars 2012 2
13 juin 2007 à 11:58
Bonjour jrivet drikce06, niky

Merci de vos réponse. Elle m'ont guidées. dans la solution de conversion.

niky tu as raison c'est un file.move qu'il faut faire et on peut je pense faire plus court aussi dans le code avec un for each par exemple.

dim NomFichier as string = chemin du dossier à parcourir

For Each NomFichier in Directory.GetFiles (Nomfichier)
   NomFichier.move (NomFichier, NomFichier.replace(".doc", ".rtf"))   
Next

J'ai vérifié, l'ouverture fonctionne avec Word et le contenu du texte est bien gardé (gras, italique, souligné, couleurs, tabultion, centrée, à droite, ...)

Merci de votre aide à tous.
0
cs_niky Messages postés 168 Date d'inscription jeudi 28 juin 2001 Statut Membre Dernière intervention 18 octobre 2008 7
13 juin 2007 à 12:56
Mefie toi juste de la fonction Replace. Elle peut avoir des effets de bord gênant :
Si on prend les exemples des fichiers suivants :
c:\Mes.documents\fichier.doc   --> c:\Mes.rtfuments\fichier.rtf
c:\dossier\fichier.DOC --> c:\dossier\fichier.DOC (à cause de la casse)

Le résultat peut ne pas toujours être celui souhaité.
0
Le newbie Messages postés 200 Date d'inscription mardi 17 octobre 2006 Statut Membre Dernière intervention 24 mars 2012 2
13 juin 2007 à 13:57
C'est vrai, tu as raison. Normalement ce cas ne peut pas m'arriver mais dans le dev rien n'est normal donc je vais m'inspirer de ce que tu m'as dit pour m'éviter des désagréments. En tout cas j'espère que cela servira à d'autres.

Merci encore niky.
0