RENOMMER UN FICHIER

tekila_bandita Messages postés 248 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 15 mars 2007 - 11 août 2005 à 11:17
tekila_bandita Messages postés 248 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 15 mars 2007 - 12 août 2005 à 10:07
Comment renommer un fichier sans passer par le wmi..??



ps: j'aimerais un exemple avec le fichier "fixhier.txt" reommer en "fichier.txt.txt"





merci...

11 réponses

fcampagne Messages postés 195 Date d'inscription vendredi 3 juin 2005 Statut Membre Dernière intervention 13 juillet 2006 3
11 août 2005 à 11:25
en utilisant ceci:

Dim fichier as fileinfo = New FileInfo("c:\fichier.txt")



Tu obtient plusieurs méthodes concerant l'objet fichier qui te permettront surement de trouver ton bonheur
0
ShareVB Messages postés 2676 Date d'inscription vendredi 28 juin 2002 Statut Membre Dernière intervention 13 janvier 2016 26
11 août 2005 à 11:30
salut,



en VB : Name "fichier.txt" As "Fichier.txt.txt"

ShareVB
0
tekila_bandita Messages postés 248 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 15 mars 2007 33
11 août 2005 à 11:31
Ok, merci...

mais si je voudrais renommer (converitr), tout les fichiers .txt de mon ordi en .doc..

quelqu'u aurait il des codes du genre..???

0
violent_ken Messages postés 1812 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 26 octobre 2010 2
11 août 2005 à 19:56
Violent Ken

Il suffit de faire une recherche récursive des fichiers de ton PC, lire l'extension de tes fichiers avec une command du style

extension= UCase(right(NomFichier, Len(NomFichier) - InStrRev(NomFichier, ".")))

et faire

if extension="txt" then
'on renomme
end if
0

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

Posez votre question
tekila_bandita Messages postés 248 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 15 mars 2007 33
11 août 2005 à 20:57
Est-ce que tu pourrais me donner un exemple d'utilisation précise de
ton code pour, avec TOUT les txt de l'ordi, en pps stp...

merci!

0
violent_ken Messages postés 1812 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 26 octobre 2010 2
11 août 2005 à 21:12
Violent Ken

Est-ce que tu pourrais me donner un exemple d'utilisation précise de ton code pour, avec TOUT les txt de l'ordi, en pps stp...
En "pps" çà veut dire quoi ?
0
tekila_bandita Messages postés 248 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 15 mars 2007 33
11 août 2005 à 21:25
En pps signifie en fichier de type .pps...
les fichiers pps sont des fichiers de style .doc...
si tu veu, au lieu de pps, mets doc a la place..

merci en tout cas!
0
violent_ken Messages postés 1812 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 26 octobre 2010 2
11 août 2005 à 22:05
Violent Ken

Tiens c'est tout frais, je viens de le faire pour toi
N'oublie pas de déclarer la référence Microsoft scripting runtime

'voilà le code
'place le dans un module par exemple
'utilisation : scanfolder "c:",true pour remplacer tout les fichiers *.txt de C:\ (et sous-dossiers) en *.pps

Dim e 'pour redonner la main
Dim extension As String, Eletemp As String
Dim fs As New FileSystemObject 'déclarer la référence microsoft scripting runtime


Public Function ScanFolder(FolderPath As String, Optional SubFold As Boolean = True) As Long
's'utilise commme suit :
'Scanfolder "c:",True
'"c:" désigne le répertoire racine
'subfold (true or false) inclutou non les sous-dossiers
On Error Resume Next


Dim Element As Variant
Dim StrPath() As String
ScanFolder = fs.GetFolder(FolderPath).Files.Count

For Each Element In fs.GetFolder(FolderPath).Files

e = e + 1 'pour redonner la main
Ele = Element 'Element représente le nom du fichier scanné


If (e Mod 800) = 0 Then DoEvents 'redonne la main de tps en tps
'test de l'extension de Element
extension = UCase(Right(Ele, Len(Ele) - InStrRev(Ele, ".")))
'a noter que l'extension est renvoyée en majuscules par Ucase
'pour bien prendre en compte *.txt, *.TXT, *.tXt ...
If extension = "TXT" Then
'alors c'est un fichier powerpoint
'on renomme
Eletemp = Left$(Ele, Len(Ele) - 3)
'eletemp représente le nom du fichier sans la terminaison pps
'Name Ele As Eletemp & "pps"
'renommé le fichier
a = a
End If

Next Element

If SubFold Then
'si les sous-dossiers sont sélectionné (subfold=true)
'on fait un recherche récursive dans les dossiers du dossier actuel
For Each Element In fs.GetFolder(FolderPath).SubFolders
ScanFolder = ScanFolder + ScanFolder(Element.Path, SubFold)
Next Element
End If
End Function

'Voilà, çà devrais marcher !
0
tekila_bandita Messages postés 248 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 15 mars 2007 33
12 août 2005 à 09:30
Désolé, mais il ne marche pas chez moi, je pense que c'est a cause que je n'ai pas vb6...
merci beaucoup en tout cas!
J' ai déja éssayé de récupérer une partie du code de i love you ( la partie qui infecte lé jpg...) et de la modifier mais je n'y arrive pas...
Donc si quelqu'un a un truc dans l'esprit...
0
violent_ken Messages postés 1812 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 26 octobre 2010 2
12 août 2005 à 09:39
Violent Ken

Non il marche. Mais tu vois cette ligne : 'Name Ele As Eletemp & "pps"
et bien enlève simplement le guillement devant !
il faut la remplacer par : Name Ele As Eletemp & "pps"

Rééssaye !
Dsl pour le guillemet, quand j'ai testé j'avais mis cette ligne en commentaire pour éviter de renommer mes fichiers, et j'ai oublié de l'enlever...
0
tekila_bandita Messages postés 248 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 15 mars 2007 33
12 août 2005 à 10:07
Nan, mais, meme, sa ne marche quand meme pas...
Car je pense que c'est peut etre ma version de Windows scripting host qui est trop vieille, mais je ne peux décllaré correctement mes variables...
ex:
dim a AS string ne marchera pas car je ne peux allé plus loin que "a"
ensuite le code me dira "fin d'instruction attendu..."


Donc merci quand meme!
Mais si tu arriverai a récupérer la partie de i love you est de la remplacé par txt est pps, ce serai déja pas mal!


MERCI!
0
Rejoignez-nous