0

我有一堂课,简单的像

class Example
{
    uint id;
    ushort value1;
    string value2;
    DateTime timestamp;
 }

我也有一个csv,比如:

id;value1;value2;timestamp
5;0x2313;whatever;2012-12-23-12:14:34,567
6;0x2A14;something;2012-12-24:13:14:15:167

我想基于 CSV 创建对象,但是真正的类要大得多并且容易改变,所以我想使用反射。我有一些代码获取属性的名称并找到相应的字符串。我没有得到的是,如何将字符串转换为属性的任何类型。我发现了一些代码示例如何转换值,但是将字符串转换为短字符串并不是一个解决方案。

有任何想法吗?

4

2 回答 2

4

您可以使用以下Convert.ChangeType方法:

myObject.Field = Convert.ChangeType(value, fieldType);
于 2013-02-28T09:41:23.653 回答
0

您可能想查看Convert类。如果您知道要将字符串转换为的类型,则可以使用它。

或者,您可以使用该类型的 Parse() 或 TryParse() 方法。

例如,要将字符串转换为短字符串,您可以使用Int16.TryParse()

于 2013-02-28T09:41:16.537 回答