我有一个<string, IComparable>
字典,这意味着该值几乎可以包含任何值类型。
现在,当我更新值时,我想将字符串输入转换为原始类型。我尝试过各种各样的皈依者,但我似乎没有取得任何成功。
实施例 字典val = new Dictionary(); Val.Add(“test”,1); Val [“test”] =“44”; //这是我尝试转换的地方但它并不总是一个整数。
因此,如果预先更新该值为int,则将其存储为int。如果它是一个字节,那么它将被存储为一个字节。
任何人都可以指出我正确的方向
由于
答案 0 :(得分:0)
string id = "type";
val.Add(id, 1);
var type = val[id].getType();
val[id] = System.Convert.ChangeType("44", type);
答案 1 :(得分:0)
假设您知道将要使用的所有数据类型(int,byte等),您可以使用typeof运算符检查之前的类型,然后从您的数据转换为该类型。
if (typeof(Val["test]) == int)
{
Val["test"] = int.parse("44");
}