If I have an array and perform a ToString() does that just string together the array values in one long comma seperated string or is that not possible on an array?
If I have an array and perform a ToString() does that just string together the array values in one long comma seperated string or is that not possible on an array?
Option 1
If you have an array of strings, then you can use String.Join:
string[] values = ...;
string concatenated = string.Join(",", values);
Option 2
If you're dealing with an array of any other type and you're using .NET 3.5 or above, you can use LINQ:
string concatenated = string.Join(",",
values.Select(x => x.ToString()).ToArray());
You can certainly do that, but it's not the default behaviour. The easiest way to do that (from .NET 3.5 anyway) is probably:
string joined = string.Join(",", array.Select(x => x.ToString()).ToArray());
MoreLINQ has a built-in method to do this:
string joined = array.ToDelimitedString();
or specify the delimited explicitly:
string joined = array.ToDelimitedString(",");
No, ToString of an array will give you the Type name string of the object. use String.Join method instead.
It doesn't (as you noticed).
For string arrays you can use:
string.Join(",", myArray)
for other arrays I think you need to code it yourself.
To achieve this effect you should call String.Join(string, string[])
I.e.
string[] stringArray = new string[] { "a", "b", "c" };
string.Join(",", stringArray);