如何将对象从外部项集合转换为Integer类型

时间:2016-11-16 17:47:31

标签: vb.net object

如何将对象数据类型转换为整数?

我正在尝试对我的应用程序进行计算,读取OPC项的值。对象用于标识服务器中的OPC项。

以下是我要做的事情:

Itemvalues(0)* 1000 + itemvalues(1)

Itemvalues是OPC项的值。

Itemvalues是一种对象数据类型,它可以包含任何数据类型。但你必须转换它。

(*)是乘法。

1000是整数

(+)是加法

以下是我尝试的代码:

    Dim y As Object
    Dim yR As Integer
    Dim z As Object
    Dim zR As Integer
    Dim x = 1000

    yR = CInt(y)
    zR = CInt(z)

     y = itemValues(1).Value
     z = itemValues(2).Value 
    itemValues(1).Value = yR * x + zR

但它显示0:

哪个是错误的计算,这是因为Object的默认值是Nothing(空引用)。我该如何计算?

1 个答案:

答案 0 :(得分:0)

您的问题并不完全清楚,但代码中存在明显的逻辑问题。

在为y和z指定任何内容之前,您将从变量y和z中指定yR和zR的值。所以这些值总是为0。

像这样交换分配顺序:

 y = itemValues(1).Value
 z = itemValues(2).Value 

yR = CInt(y)
zR = CInt(z)

您的代码中还有其他问题,但这可能是您的直接问题。