cs_Willi
Messages postés2375Date d'inscriptionjeudi 12 juillet 2001StatutModérateurDernière intervention15 décembre 2018
-
12 sept. 2005 à 23:18
cs_titi2b
Messages postés24Date d'inscriptionjeudi 21 novembre 2002StatutMembreDernière intervention20 février 2010
-
30 mars 2010 à 17:52
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cs_titi2b
Messages postés24Date d'inscriptionjeudi 21 novembre 2002StatutMembreDernière intervention20 février 2010 30 mars 2010 à 17:52
Merci, je test, très pratique comme fonction.
A rajouter au code snippets.
Merci beaucoup a plus
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 30 mars 2010 à 07:50
J'ignore si cela existe...
une traduction donnerait :
Public Function GetUnique(ByRef vsFileName As String, Optional ByRef vsIndicators As String "()", Optional ByVal vnFirstIndex As Integer 1) As String
Dim i As Integer
'# Le nom de fichier est séparé en deux parts
'# 'C:\a(' et ').mp3'
Dim sBegin As String
Dim sEnd As String
If Not File.Exists(vsFileName) Then
'# Le fichier existe, on ne se pose pas de question
GetUnique = vsFileName
Else
'# On sépare les parties du nom de fichier
i = vsFileName.LastIndexOf(".")
If i <> 0 Then
sEnd = vsFileName.Substring(i)
sBegin = vsFileName.Substring(0, i)
Else
'# Pas d'extension, la première partie est le nom complet
sBegin = vsFileName
sEnd = String.Empty
End If
'# Si l'indicateur (forcément deux caractères) est fournis, on complète les deux parties du nom
If vsIndicators.Length = 2 Then
sBegin &= vsIndicators.Substring(0, 1)
sEnd = vsIndicators.Substring(1) & sEnd
End If
i = vnFirstIndex
Do
'# On reconstruit un nom de fichier
GetUnique = sBegin & i & sEnd
i = i + 1
'# On boucle tant que le fichier existe, après avoir incrémenté le compteur
Loop While File.Exists(GetUnique)
End If
End Function
sans oublier le
Imports System.IO
cs_titi2b
Messages postés24Date d'inscriptionjeudi 21 novembre 2002StatutMembreDernière intervention20 février 2010 30 mars 2010 à 06:13
Bonjours,exist'il une fonction telle que cella en vb.net.
J'ai essayer de la convertir mais cela ne fonctionne pas.
Merci
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 25 août 2007 à 12:18
très utile, j'embarque merci ;)
Cacophrene
Messages postés251Date d'inscriptionlundi 29 mars 2004StatutMembreDernière intervention 4 mars 20081 13 sept. 2005 à 09:53
Salut !
OK merci pour l'info Renfield.
Cordialement,
Cacophrène
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 13 sept. 2005 à 08:42
Dir$ génère une erreur 52 si tu lui donne un chemin réseau inexistant
ex : dir$("\\toto\bb.txt")
Cacophrene
Messages postés251Date d'inscriptionlundi 29 mars 2004StatutMembreDernière intervention 4 mars 20081 13 sept. 2005 à 07:52
Salut !
C'est une idée bien sympa ça ! La fonction est sympathique. J'ai une question toutefois : Dans quels cas y a-t-il un problème avec Dir$ ? Pour l'instant je n'ai été confronté qu'à des fichiers ou dossiers inexistants, ce qui, bien, entendu, renvoie Empty. Quand y a-t-il vraiment un souci (je veux dire : une erreur) ?
A bientôt et merci par avance,
Cacophrène
cs_Willi
Messages postés2375Date d'inscriptionjeudi 12 juillet 2001StatutModérateurDernière intervention15 décembre 201822 12 sept. 2005 à 23:18
Sa ressemble grandement à XP quand tu renommes une tripotés de fichiers
J'ai pas testé ton code mais il me semble pas mal à vu d'oeil je vais tester...
Bonne prog a+
30 mars 2010 à 17:52
A rajouter au code snippets.
Merci beaucoup a plus
30 mars 2010 à 07:50
une traduction donnerait :
Public Function GetUnique(ByRef vsFileName As String, Optional ByRef vsIndicators As String "()", Optional ByVal vnFirstIndex As Integer 1) As String
Dim i As Integer
'# Le nom de fichier est séparé en deux parts
'# 'C:\a(' et ').mp3'
Dim sBegin As String
Dim sEnd As String
If Not File.Exists(vsFileName) Then
'# Le fichier existe, on ne se pose pas de question
GetUnique = vsFileName
Else
'# On sépare les parties du nom de fichier
i = vsFileName.LastIndexOf(".")
If i <> 0 Then
sEnd = vsFileName.Substring(i)
sBegin = vsFileName.Substring(0, i)
Else
'# Pas d'extension, la première partie est le nom complet
sBegin = vsFileName
sEnd = String.Empty
End If
'# Si l'indicateur (forcément deux caractères) est fournis, on complète les deux parties du nom
If vsIndicators.Length = 2 Then
sBegin &= vsIndicators.Substring(0, 1)
sEnd = vsIndicators.Substring(1) & sEnd
End If
i = vnFirstIndex
Do
'# On reconstruit un nom de fichier
GetUnique = sBegin & i & sEnd
i = i + 1
'# On boucle tant que le fichier existe, après avoir incrémenté le compteur
Loop While File.Exists(GetUnique)
End If
End Function
sans oublier le
Imports System.IO
30 mars 2010 à 06:13
J'ai essayer de la convertir mais cela ne fonctionne pas.
Merci
25 août 2007 à 12:18
13 sept. 2005 à 09:53
OK merci pour l'info Renfield.
Cordialement,
Cacophrène
13 sept. 2005 à 08:42
ex : dir$("\\toto\bb.txt")
13 sept. 2005 à 07:52
C'est une idée bien sympa ça ! La fonction est sympathique. J'ai une question toutefois : Dans quels cas y a-t-il un problème avec Dir$ ? Pour l'instant je n'ai été confronté qu'à des fichiers ou dossiers inexistants, ce qui, bien, entendu, renvoie Empty. Quand y a-t-il vraiment un souci (je veux dire : une erreur) ?
A bientôt et merci par avance,
Cacophrène
12 sept. 2005 à 23:18
J'ai pas testé ton code mais il me semble pas mal à vu d'oeil je vais tester...
Bonne prog a+