buenas
para visual basic 6 a ver si alguien me puede ayudar
quisiera un comando q me elimine todos los archivos "aaa.txt" de un directorio (mejor dicho de una carpeta y todas sus subcarpetas)
se supone q una carpeta "c:\xxx" contiene un archivo "aaa.txt"(no puede contenet 2 xq no va a haber mas d 1 archivo con el mismo nombre jajaj) ademas contiene subcarpetas:
c:\xxx
c:\xxx\yyy
c:\xxx\yyy\ddd
c:\xxx\hhh\
c:\xxx\hhh\jjj
bueno en fin se supone q tambien en cada una de ellas existe el archivo "aaa.txt" el cual quiero eliminar
pero OJO!! solo ese archivo....no todos los archivos q se encuentran en las carpetas, ni tampoco todos los *.txt de las carpetas, solo los q contengan ese nombre completo
================================================== ==============================
tambien necesito reemplazar un archivo, que tengo en la carpeta del proyecto de visual basic(osea junto al .exe y los otros archivos de mi proyecto), en todo un directorio
siguiendo el ejemplo anterior, suponiendo que en la carpeta del proyecto de vb tengo un "aaa.txt" el cual quiero reemplazarlo porr cada uno de los q se encuentra en la carpeta c:\xxx y en sus subcarpetas
si alguien tiene alguna idea
muchas gracias
hola con la Funcion Kill podes eliminar los archivos
Kill "C:\xxx\a.txt"
'Si queres eliminar varios archivos de un directorio podes utilizar "*", y si queres excluir ciertos archivos podes utilizar "?".
y con la Funcion RmDir podes eliminar Carpetas.
RmDir "C:\xxxx"
' elimina directorios o carpetas, pero antes de eliminar directorios tenes que estar seguros que la carpeta no contiene archivos, si no
'dará un error en tiempo de ejecución.
Para reemplazar x archivo podes usar FileCopy, el primer parametro de esta
funcion es el archivo de origen y el segundo parametro es el destino.
para poder reemplazarlo el archivo no tiene que estar en "Solo Lectura" eso lo averiguas con GetAttr y con SetAttr podes cambiar la popiedad de solo lectura a Normal.
Dim ret As Long
ret = GetAttr(App.Path & "\aaa.txt")
If ret = vbReadOnly Then
SetAttr App.Path & "\aaa.txt", vbNormal
FileCopy "C:\aaa.txt", App.Path & "\aaa.txt"
else
FileCopy "C:\aaa.txt", App.Path & "\aaa.txt"
End If
Hola, fijate que con esto podes listar todas las carpetas y subcarpetas de un path especifico..
Private Sub Form_Load()
Set FSO = CreateObject("Scripting.FileSystemObject")
ListarSubDirectorios FSO.GetFolder("c:\xxx")
End Sub
Private Sub ListarSubDirectorios(ByVal Carpeta As Object)
For Each SubCarpeta In Carpeta.SubFolders
Debug.Print SubCarpeta.Path
ListarSubDirectorios SubCarpeta
Next
End Sub
tambien tendrias que listar los archivos de cada carpeta pero bueno eso es facil solo busca sobre FSO...y ahi vas eliminando el archivo con el nombre indicado...y para reemplazar tambien...
saludos.