Could I have written this better?

K

KJ

Let's say you have a string of "0101010"


Each position represents a day of the week?

ArrDS = strDS.ToCharArray()

If ArrDS(0) = "1" Then strDSDays = strDSDays & "Sun, "
If ArrDS(1) = "1" Then strDSDays = strDSDays & "Mon, "
If ArrDS(2) = "1" Then strDSDays = strDSDays & "Tues, "
If ArrDS(3) = "1" Then strDSDays = strDSDays & "Wed, "
If ArrDS(4) = "1" Then strDSDays = strDSDays & "Thurs, "
If ArrDS(5) = "1" Then strDSDays = strDSDays & "Fri, "
If ArrDS(6) = "1" Then strDSDays = strDSDays & "Sat, "

Thanks
 
H

Herfried K. Wagner [MVP]

* (e-mail address removed) (KJ) scripsit:
Let's say you have a string of "0101010"


Each position represents a day of the week?

ArrDS = strDS.ToCharArray()

If ArrDS(0) = "1" Then strDSDays = strDSDays & "Sun, "
If ArrDS(1) = "1" Then strDSDays = strDSDays & "Mon, "
If ArrDS(2) = "1" Then strDSDays = strDSDays & "Tues, "
If ArrDS(3) = "1" Then strDSDays = strDSDays & "Wed, "
If ArrDS(4) = "1" Then strDSDays = strDSDays & "Thurs, "
If ArrDS(5) = "1" Then strDSDays = strDSDays & "Fri, "
If ArrDS(6) = "1" Then strDSDays = strDSDays & "Sat, "

Alternative:

\\\
Dim astrNames() As String = New String() {"Sun, ", "Mon, ", ..., "Sat, "}
Dim strDest As String
Dim i As Integer = 0
Dim c As Char
For Each c In strDS
If c = "1"c Then
strDest &= strDest astrNames(i)
End If
i += 1
Next c
MsgBox(strDest)
///
 
E

Erik Frey

KJ said:
Let's say you have a string of "0101010"


Each position represents a day of the week?

ArrDS = strDS.ToCharArray()

If ArrDS(0) = "1" Then strDSDays = strDSDays & "Sun, "
If ArrDS(1) = "1" Then strDSDays = strDSDays & "Mon, "
If ArrDS(2) = "1" Then strDSDays = strDSDays & "Tues, "
If ArrDS(3) = "1" Then strDSDays = strDSDays & "Wed, "
If ArrDS(4) = "1" Then strDSDays = strDSDays & "Thurs, "
If ArrDS(5) = "1" Then strDSDays = strDSDays & "Fri, "
If ArrDS(6) = "1" Then strDSDays = strDSDays & "Sat, "

Thanks

It sounds like you're trying to duplicate functionality already provided by
an Enum with the <Flags()> attribute.

Erik
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top