와일드 카드(*, ?)를 사용하여 여러 파일을 삭제하는 방법
저자: Daniel Joe | 날짜: 2002년 02월 25일 |
ASP에서 FSO를 이용하여 파일을 삭제할 때 와일드 카드를 사용하면 같은 종류의 확장자를 가진 파일을 동시에 삭제할 수 있다. 예를 들어 다음과 같이 확장자가 .bak인 모든 파일을 삭제할 수 있을 것이다.
objFSO.DeleteFile("C:\inetpub\wwwroot\*.bak") |
아직 FSO에 대해 잘 모르는 사람들은 다음 글을 먼저 읽기 바란다.
물론 모든 파일을 의미하는 * 외에 글자 하나를 대신하는 ?를 사용하는 것 역시 가능하다.
objFSO.DeleteFile("C:\inetpub\wwwroot\autoexec?.bat") |
만일 특정 파일을 삭제하고자 할 때 해당 파일이 존재하지 않으면 에러가 발생하므로 DeleteFile 코드 작성시 On Error Resume Next 문을 삽입해주는 것이 바람직하다.
이번엔 여러 확장자 파일을 동시에 삭제하는 방법에 대해 알아보도록 하자. 이것 역시 와일드 카드를 사용하되 여러 확장자 파일을 동시에 삭제해야 하므로 반복문을 돌며 DeleteFile을 사용하면 될 것이다. 이를 위해 간단한 함수를 만들면 다음과 같다.
Sub DeleteMultipleFiles(strWildcards, strDirectory) |
위 함수를 사용하는 방법은 다음과 같다.
Dim strWildcards, strDirectory |
split 함수에 대해 잘 모르는 사람은 다음 글을 참조하기 바란다.