- FUNCTION RenameFilePrefixes(cDir,cOld,cNew)
- LOCAL cFileName, cRightPart
- IF( DIRECTORY(cDir) .AND. !EMPTY(cOld) .AND. !EMPTY(cNew) .AND. cOld != cNew )
- SET DEFAULT TO "&cDir"
- cFileName = SYS(2000,cOld+"*.*")
- DO WHILE( !EMPTY(cFileName) )
- IF( LEN(cNew) > LEN(cOld) ) && Evite de boucler infiniment
- DO WHILE( !EMPTY(cFileName) .AND. cNew = LEFT(cFileName,LEN(cNew)) )
- cFileName = SYS(2000,cOld+"*.*",1) && Passage au fichier suivant
- ENDDO
- ENDIF
- IF( !EMPTY(cFileName) )
- cRightPart = SUBSTR(cFileName,LEN(cOld)+1) && Partie de droite à garder
- RENAME "&cOld"+"&cRightPart" TO "&cNew"+"&cRightPart" && Remplacement du préfixe
- cFileName = SYS(2000,cOld+"*.*") && Passage au fichier suivant
- ENDIF
- ENDDO
- SET DEFAULT TO
- RETURN .T.
- ELSE
- RETURN .F.
- ENDIF
- ENDFUNC
FUNCTION RenameFilePrefixes(cDir,cOld,cNew)
LOCAL cFileName, cRightPart
IF( DIRECTORY(cDir) .AND. !EMPTY(cOld) .AND. !EMPTY(cNew) .AND. cOld != cNew )
SET DEFAULT TO "&cDir"
cFileName = SYS(2000,cOld+"*.*")
DO WHILE( !EMPTY(cFileName) )
IF( LEN(cNew) > LEN(cOld) ) && Evite de boucler infiniment
DO WHILE( !EMPTY(cFileName) .AND. cNew = LEFT(cFileName,LEN(cNew)) )
cFileName = SYS(2000,cOld+"*.*",1) && Passage au fichier suivant
ENDDO
ENDIF
IF( !EMPTY(cFileName) )
cRightPart = SUBSTR(cFileName,LEN(cOld)+1) && Partie de droite à garder
RENAME "&cOld"+"&cRightPart" TO "&cNew"+"&cRightPart" && Remplacement du préfixe
cFileName = SYS(2000,cOld+"*.*") && Passage au fichier suivant
ENDIF
ENDDO
SET DEFAULT TO
RETURN .T.
ELSE
RETURN .F.
ENDIF
ENDFUNC