0
我有一个这样的字符串:在.net中获取关键值对的内置方式?
“MyPropery =价值”
是否有这个转换为可用keyValuePair(或类似物体)的快捷方式(使用内置的.NET)?
一个解决方案是使用拆分,但我正在寻找比项目列表更具体的内容,因为只有2个键+值存在。
在此先感谢。
我有一个这样的字符串:在.net中获取关键值对的内置方式?
“MyPropery =价值”
是否有这个转换为可用keyValuePair(或类似物体)的快捷方式(使用内置的.NET)?
一个解决方案是使用拆分,但我正在寻找比项目列表更具体的内容,因为只有2个键+值存在。
在此先感谢。
手动分割他们,他们坚持一个Dictionary<String, String>
:
static void Main(string[] args)
{
var input = @"Key1=Value1
Key2=Value2
Key3=Value3=Value4
FooBar";
var result = CreateKeyValuePairs(input);
foreach (var kvp in result)
{
Console.WriteLine("{0} = {1}", kvp.Key, kvp.Value);
}
// Access specific item by key:
Console.WriteLine(result["Key2"]);
}
private static Dictionary<String, String> CreateKeyValuePairs(string input)
{
var result = new Dictionary<String, String>();
foreach (var line in input.Split('\n'))
{
var kvp = line.Trim();
if (!String.IsNullOrEmpty(kvp))
{
int equals = kvp.IndexOf('=');
if (equals > 0)
{
var key = kvp.Substring(0, equals);
var value = kvp.Substring(equals + 1);
// You might want to trim the key and value
result.Add(key, value);
}
else
{
// Invalid key/value-pair
}
}
}
return result;
}
你在哪里得到这个字符串?你能举一个更完整的例子吗? – Oded
如果有我从来没有发现它写了一个NamedValues类隐藏字典 –