Solved

How to Check Whether an Array Is Empty

Posted on 2009-04-10
4
1,906 Views
Last Modified: 2013-12-25
In the code below, strFileList is a array of file names (strings).

I want to be sure the array is not empty before I run the File Delete portion of the code.  

Will the method below work for skipping the File Delete portion if there are no values in the array?  

Is there a better way to check to see if the array is empty.
Dim strFileList As String()
        Dim strFileName As String
 
        Dim intFileListItemCount As Integer = 0
 
        If Directory.Exists(strBackupPath) = True Then
 
            strFileList = Directory.GetFiles(strBackupPath, "*.bak")
 
            For Each strFileName In strFileList
                intFileListItemCount = intFileListItemCount + 1
            Next
 
            If intFileListItemCount > 0 Then
                For Each strFileName In strFileList
                    File.Delete(strFileName)
                Next
 
                Return True
            Else
                Return False
 
            End If
        Else 'Directory does not exist
            Return False
        End If

Open in new window

0
Comment
Question by:TimSledge
  • 2
4 Comments
 
LVL 48

Accepted Solution

by:
jpaulino earned 100 total points
ID: 24120212
You can check the Length of the array that gives you the number of elements you have

        If strFileName.Length = 0 Then
            Stop ' array is empty
        End If

Open in new window

0
 
LVL 47

Assisted Solution

by:Wayne Taylor (webtubbs)
Wayne Taylor (webtubbs) earned 25 total points
ID: 24120256
I believe that should be...

    strFileList.Length = 0

Wayne
        Dim strFileList As String()
        Dim strFileName As String
  
        If Directory.Exists(strBackupPath) = True Then
             strFileList = Directory.GetFiles(strBackupPath, "*.bak") 
            If strFileList.Length > 0 Then
                For Each strFileName In strFileList
                    File.Delete(strFileName)
                Next 
                Return True
            Else
                Return False 
            End If
        Else 'Directory does not exist
            Return False
        End If

Open in new window

0
 
LVL 48

Expert Comment

by:jpaulino
ID: 24120262
>> I believe that should be...
It was a typo :)
0
 
LVL 4

Author Comment

by:TimSledge
ID: 24120812
Thanks for your help!
0

Featured Post

VMware Disaster Recovery and Data Protection

In this expert guide, you’ll learn about the components of a Modern Data Center. You will use cases for the value-added capabilities of Veeam®, including combining backup and replication for VMware disaster recovery and using replication for data center migration.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Introduction While answering a recent question (http://www.experts-exchange.com/Q_27402310.html) in the VB classic zone, I wrote some VB code in the (Office) VBA environment, rather than fire up my older PC.  I didn't post completely correct code o…
This article describes some techniques which will make your VBA or Visual Basic Classic code easier to understand and maintain, whether by you, your replacement, or another Experts-Exchange expert.
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…

803 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question