65.9K
CodeProject is changing. Read more.
Home

Unknown size Numeric Arrays from Strings - dontumindit

emptyStarIconemptyStarIconemptyStarIconemptyStarIconemptyStarIcon

0/5 (0 vote)

Feb 14, 2011

CPOL
viewsIcon

4780

I prefer something a little more generic:public static IEnumerable Convert(string value, char separator) where TTypeConverter : TypeConverter { var typeConverter = (TTypeConverter)TypeDescriptor.GetConverter(typeof(TValue)); ...

I prefer something a little more generic:
public static IEnumerable<TValue> Convert<TValue, TTypeConverter>(string value, char separator) where TTypeConverter : TypeConverter
       {
           var typeConverter = (TTypeConverter)TypeDescriptor.GetConverter(typeof(TValue));
          return new List<string>(value.Split(separator))
              .ConvertAll<TValue>(s => (TValue)typeConverter.ConvertFrom(s));
       }
That way I can convert a delimited string to a large number of IEnumerable<T> collections in just one line and I don't have to worry about the size of the collection either:
public static void UsageMethod()
        {
            var myIntegers = ((List<int>)Convert<int, TypeConverter>("1,2,3,4,5", ',')).ToArray();
        }