Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Удалить файлы в заданной директории VB Добавлено: 17.02.04 10:04  

Автор вопроса:  EDIK

Убивать файлы в заданной директории и во всех вложенных папках этой директории.... Например с:\!!!\*.ini

А в директории C:\!!!\ есть вложенные папки например 1,2,3 и там тоже есть эти *.ini

Подскажите как лутше и если можна листинг программы???  

Ответить

  Ответы Всего ответов: 3  

Номер ответа: 1
Автор ответа:
 .::EclipsE::.



ICQ: 208952501 

Вопросов: 22
Ответов: 85
 Профиль | | #1 Добавлено: 17.02.04 14:07

Циклом пройди по всем поддиректориям и поудаляй все файлы (Команда Kill), а потом также удали и дериктории (Команда RmDir). Это самый простой способ

Ответить

Номер ответа: 2
Автор ответа:
 mzx



ICQ: 259560026 

Вопросов: 21
Ответов: 143
 Профиль | | #2 Добавлено: 17.02.04 15:28

Можно Scripting Runtime использовать.

 

Создаешь новый проект.

Подключаешь Microsoft Scripting Runtime:

Меню -> Project -> Preferences...

Ставишь галку для Microsoft Scripting Runtime.

 

Вставляешь код:

 

Option Explicit

Dim fso As FileSystemObject 'объект для работы с файловой системой
Dim RootFolder As String 'текущий каталог

'Старт программы
Private Sub Form_Load()
    Set fso = New Scripting.FileSystemObject 'создаем объект для работы с файловой структурой
    RootFolder = "E:\Test1" 'путь к папке
    VFold RootFolder
End Sub

'Перебираем папки
Private Sub VFold(folderspec)
Dim F, f1, sf
    Set F = fso.GetFolder(folderspec) 'получаем объект Folder
    'Просматриваем файлы в текущей папке
    VFile folderspec
    Set sf = F.SubFolders 'получаем объект SubFolders
    'Организуя цикл, просматриваем папки
    For Each f1 In sf
        VFold (f1.Path)
    Next
End Sub

'Перебираем файлы и удаляем с расширением *.ini
Private Sub VFile(folderspec)
Dim fld, f1, fc
Dim i As Integer
    Set fld = fso.GetFolder(folderspec)
    Set fc = fld.Files
    For Each f1 In fc
        If fso.GetExtensionName(f1.Name) = "ini" Then f1.Delete
    Next
End Sub

В папке E:/Test1 удаляются файлы с расширением *.ini

Ответить

Номер ответа: 3
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #3
Добавлено: 17.02.04 17:27

Тут примерчик на сайте был (Scan for folders) от d1 (Андрей), рекурсивное сканироание каталога/диска. Он возвращает все (полные) пути к файлам, а далее можно пользоваться либо VB'шным Kill или API'шным DeleteFile()

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам