1 | initial version |
Assuming we have a string with key-value pairs separated by semicolons and each value separated by commas, we can use the following C# code to convert the string into a Dictionary with a type of Dictionary<string, list<string="">>:
string inputString = "key1:value1,value2,value3;key2:value4,value5;key3:value6,value7";
Dictionary<string, List<string>> dict = new Dictionary<string, List<string>>();
string[] entries = inputString.Split(';');
foreach (string entry in entries)
{
string[] keyValue = entry.Split(':');
string key = keyValue[0];
string[] values = keyValue[1].Split(',');
List<string> listValues = new List<string>();
foreach (string value in values)
{
listValues.Add(value);
}
dict.Add(key, listValues);
}
The above code first splits the input string into separate entries based on semicolons. Then for each entry, it splits it into key-value pairs based on colons, and splits the values into a string array based on commas. It creates a new List for each set of values, adds each value into the list, and finally adds the key-value pair into the Dictionary. The resulting Dictionary will have strings as keys and a List of strings as its values.