Stringlist functions

Stringlist functions

Top  Previous  Next

' add and insert items

sub StringList_AddItem(ByRef sList As String, sItem As String)

sub StringList_InsertItem(ByRef sList As String, index As Integer, sItem As String)


' change item with specified index

sub StringList_ChangeItem(ByRef sList As String, index As Integer, sItem As String)


' delete item with specified index

sub StringList_DeleteItem(ByRef sList As String, index As Integer)


' get item with specified index

function StringList_GetItem(sList As String, index As Integer) As String


' get item index (or test if item exists)

function StringList_GetItemIndex(sList As String, sItem As String) As Integer


' get item count

function StringList_ItemCount(sList As String) As Integer


' sort all strings in the list

sub StringList_Sort(ByRef sList As String)


' Load a text file and store each line as item in a string list

function StringList_LoadFromFile(sFilename As String, ByRef sList As String) As Boolean


' Save a string list to a file

function StringList_SaveToFile(sFilename As String, ByRef sList As String) As Boolean


A stringlist is a simple string where each item of the list is stored in a separate line.

Lines are separated by a carriage return linefeed (chr(13)+chr(10), or CRLF).


The stringlist functions can be used to easily maintain such a list, for example to insert or delete single items.


You can also add strings with line breaks to a string list, all carriage return linefeeds are encoded automatically within the string list.


Stringlists are zero based, that means that the first item has index 0, the second item has index 1, etc. The number of items can be determined with the function "StringList_ItemCount".


The function "StringList_GetItemIndex" can be used to get the index of a specific item. If the item is not found, the function returns -1.



Dim sl, s, i, sItem, nCount


' Clear the string list

sl = ""


' Add items to the stringlist

StringList_AddItem(sl, "WebSite")

StringList_AddItem(sl, "Watcher")

StringList_AddItem(sl, "cool")

' items are now: WebSite, Watcher, cool


' Insert item after "Watcher"

StringList_InsertItem(sl, 2, "is")

' items are now: WebSite, Watcher, is, cool


' Check if item exists

= StringList_GetItemIndex(sl, "power")

' returns i = -1


= StringList_GetItemIndex(sl, "is")

' returns i = 2


' Change last item

StringList_ChangeItem(sl, 3, "very cool")

' items are now: WebSite, Watcher, is, very cool


' Iterate through all items

= ""

nCount = StringList_ItemCount(sl)

For i = 0 To nCount - 1

   s = Trim(+ " " + StringList_GetItem(sl, i))


' s is now: WebSite-Watcher is very cool


' Sort the string list


' items are now: is, very cool, Watcher, WebSite


' Delete item with index 2

StringList_DeleteItem(sl, 2)

' items are now: is, very cool, WebSite


' Delete item "WebSite"

StringList_DeleteItem(sl, StringList_GetItemIndex(sl, "WebSite"))

' items are now: is, very cool


' Save string list to file

StringList_SaveToFile("c:\files\stringlist.txt", sl)