VB.NET Convert List, String

Convert or change

A List of Strings can be combined into one String. Alternatively a String can be converted into a List.
Some functions,
including String.Join
and Split,
are useful for this purpose. We demonstrate them in these VB.NET examples.

Example

Note

To start, we have a List of Strings with three elements in it. With the newer versions of .NET, such as .NET 4.0, you can call String.Join directly on a List. This example takes each String element and joins them with commas.

Note:There is no comment at the end, only between two elements in the list at each location.

Tip:You can make this example compile in .NET 3.5 by using vals.ToArray() as the second argument to String.Join.

VB.NET program that uses String.Join

Module Module1
    Sub Main()
	' Create list of three strings.
	Dim vals As List(Of String) = New List(Of String)
	vals.Add("dot")
	vals.Add("net")
	vals.Add("perls")

	' Use string join function that receives IEnumerable.
	Dim value As String = String.Join(",", vals)
	Console.WriteLine(value)
    End Sub
End Module

Output

dot,net,perls

Example 2

Letters of the alphabet: ABC

You can also use the StringBuilder type to transform your List of any type of element into a single string. We use a For-Each looping construct and append the iteration variable and also a delimiter "|" after each element.

Then:We invoke the ToString function on the StringBuilder instance to acquire the result String.

StringBuilder Examples

Please note:The result string has a delimiter at the end—this may not be desirable.

VB.NET program that uses StringBuilder

Imports System.Text

Module Module1
    Sub Main()
	' Example list.
	Dim vals As List(Of String) = New List(Of String)
	vals.Add("thank")
	vals.Add("you")
	vals.Add("very")
	vals.Add("much")

	' Create StringBuilder.
	' ... Append all items in For Each loop.
	Dim builder As StringBuilder = New StringBuilder()
	For Each val As String In vals
	    builder.Append(val).Append("|")
	Next

	' Convert to string.
	Dim res = builder.ToString()
	Console.WriteLine(res)
    End Sub
End Module

Output

thank|you|very|much|

Example 3

List type

Continuing on, you often need to take a String and convert it into a collection such as a List of Strings. To do this, you can invoke the Split function on the String input, and then call the ToList extension method on the array you get.

Split String Examples

Note:You will need a newer version of .NET to have the ToList extension method.

Finally:The example demonstrates that the result List has the correct three elements.

VB.NET program that uses Split

Module Module1
    Sub Main()
	' Input string.
	Dim value As String = "Dot-Net-Perls"

	' Split on hyphen.
	Dim arr() As String = value.Split("-")

	' Convert to List.
	Dim vals As List(Of String) = arr.ToList()

	' Display each List element.
	For Each val As String In vals
	    Console.WriteLine(val)
	Next
    End Sub
End Module

Output

Dot
Net
Perls

Summary

The VB.NET programming language

We converted between Lists and Strings. Typically, using String.Join and Split are the most effective ways to perform these conversions, as the code is well-tested and already developed. But using StringBuilder can also be effective.


VB.NET: String