【问题标题】:Translating string and number comparison from VB6 to C#将字符串和数字比较从 VB6 转换为 C#
【发布时间】:2014-05-27 16:09:40
【问题描述】:

我必须将一些代码从 VB6 翻译成 C#。 rs 是一个 Recordset 对象:

If rs.Fields("mycolumn") < 5 Then
   myarray(Val(rs.Fields("mycolumn"))) = myarray(Val(rs.Fields("mycolumn"))) + 1".
End If

这里的问题是比较列和数字,因为列是一个字符串。我已经尝试过 VisualBasic Val() 方法,但它的行为并不完全相同?

我使用了这个,但它没有给出与 VB6 相同的表达式。有些记录不应该通过。

if (Microsoft.VisualBasic.Conversion.Val(rs.Rows[k]["mycolumn"]) < 5)
{

}

【问题讨论】:

标签: c# vba if-statement recordset


【解决方案1】:

您应该使用int.Parseint.TryParse将字符串转换为数字,然后您可以进行比较:

if(int.Parse(rs.Rows[k]["mycolumn"]) < 5) { ... }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-06
    • 2015-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多