我想将Dictionary转换为字符串数组(或列表)
字符串数组需要像这样返回:“ID,PTS”,其中int是ID,long是PTS。
请帮忙!
谢谢,
〜Nikku。
答案 0 :(得分:7)
var strings = dict.Select(item => string.Format("{0}, {1}", item.Key, item.Value));
请注意,这会返回一个枚举器。无论您希望结果是string[]
还是List<string>
,都应分别使用.ToArray()
或.ToList()
。
答案 1 :(得分:1)
你可以这样做:
string[] arr =
theDictionary
.Select(kvp => kvp.Key.ToString() + ", " + kvp.Value.ToString())
.ToArray();
答案 2 :(得分:1)
简单的答案是迭代字典,并将值复制到字符串列表中。
Dictionary<int, long> dict = new Dictionary<int, long>();
// If you like Linq. Stick a .ToArray() or .ToList() at the end, or leave it as IEnumerable<string>
var stringList = dict.Select(kvp => kvp.Key.ToString() + ", " + kvp.Value.ToString());
// If you don't like Linq.
List<string> stringList2 = new List<string>();
foreach (KeyValuePair<int, long> kvp in dict)
{
stringList2.Add(kvp.Key.ToString() + ", " + kvp.Value.ToString());
}