C# Convert String Array, String

Convert or change

A string array can be converted into a string. This helps store many values in a single database field. There are several ways of combining the array of strings. One way uses the string.Join method. Other ways use iteration in a loop.

Example

String type

This example program has an array of five strings. It defines two methods that will convert that string array into a single string. In some cases, the first method is best, as it lets you check the strings before adding them together.

String Array

But:In most other cases, the second method is ideal as it is shorter and simpler.

Program that converts string arrays: C#

using System;
using System.Text;

class Program
{
    static void Main()
    {
	//
	// Create an array with five strings.
	//
	string[] array = new string[5];
	array[0] = "Dot";
	array[1] = "Net";
	array[2] = "Perls";
	array[3] = "Sam";
	array[4] = "Allen";

	//
	// Call the methods.
	//
	string result1 = ConvertStringArrayToString(array);
	string result2 = ConvertStringArrayToStringJoin(array);

	//
	// Display the results.
	//
	Console.WriteLine(result1);
	Console.WriteLine(result2);
    }

    static string ConvertStringArrayToString(string[] array)
    {
	//
	// Concatenate all the elements into a StringBuilder.
	//
	StringBuilder builder = new StringBuilder();
	foreach (string value in array)
	{
	    builder.Append(value);
	    builder.Append('.');
	}
	return builder.ToString();
    }

    static string ConvertStringArrayToStringJoin(string[] array)
    {
	//
	// Use string Join to concatenate the string elements.
	//
	string result = string.Join(".", array);
	return result;
    }
}

Output
    (Note trailing period in first line.)

Dot.Net.Perls.Sam.Allen.
Dot.Net.Perls.Sam.Allen
Main method

The Program class defines a Main entry point first. It initializes a string array with five values. It then calls the two Conversion methods defined later in the program text. Finally, it prints the output of those methods.

ConvertStringArrayToString uses an internal StringBuilder to convert the array to a string. This technique is ideal when you need to loop over your string array before adding the elements.

Tip:You can actually test each individual string for some condition before appending it.

Letters of the alphabet: ABC

The StringBuilder class in the base class library is ideal for appending strings in loops such as in the ConvertStringArrayToString method. It prevents many string copies from happening, and should be used in most loops.

StringBuilder

ConvertStringArrayToStringJoin uses the string.Join static method to convert the array to a string. This is sometimes faster than StringBuilder, and also results in shorter code. However, you cannot do any setup code before calling it.

Join objects together

Join is defined on the string type, aliased to the System.String type in the base class library. You do not call the Join method on an actual string instance or an actual array instance. Instead, you can always type "string.Join".

Static

Static

The two Convert methods shown are static—they do not save state. For this reason, you can place them in a static class. If you specify the separator in your code, they probably will be program-specific, which limits their reusability.

string.JoinStatic

Summary

We converted string arrays into strings. You can use the StringBuilder class or the static string.Join method. We noted many other common tasks and solutions with converting strings, string arrays and char arrays.


C#: Cast