VB.Net VB6.Format()转换后的问题
运行将VB6.Format()转换为VS 2008代码的工具后出现一些问题。我们有这样的声明:VB.Net VB6.Format()转换后的问题,vb.net,vb6-migration,Vb.net,Vb6 Migration,运行将VB6.Format()转换为VS 2008代码的工具后出现一些问题。我们有这样的声明: VB6.Format(InVariable, szFormatMask)) 转换为以下内容: InVariable.ToString(szFormatMask) 现在的问题是,当我们调用函数时,它有一个问题,即它无法将字符串“”转换为整数值。在我们的函数中,不变量是一个对象,szFormatMask是一个字符串。您是否有任何关于不再导致此问题的建议?添加空字符串检查并相应更改: If szForm
VB6.Format(InVariable, szFormatMask))
转换为以下内容:
InVariable.ToString(szFormatMask)
现在的问题是,当我们调用函数时,它有一个问题,即它无法将字符串“”转换为整数值。在我们的函数中,不变量是一个对象,szFormatMask是一个字符串。您是否有任何关于不再导致此问题的建议?添加空字符串检查并相应更改:
If szFormatMask = "" Then szFormatMask = "G"
Return InVariable.ToString( szFormatMask )
“G”格式字符串值的特殊性在于指定输出为“常规”数字格式
(关于代码样式的简要说明:请避免使用匈牙利符号,例如
中的和sz
前缀,并使用小写的camelCase
命名局部变量和参数,因为大写的camelCase
是为类似方法和属性的类型成员保留的。什么是不变的的确切类型?(因此,即使它被强制转换为System.Object
,它到底是什么?)在本例中,它是一个发送到函数的双精度变量。请参阅,这对我没有任何帮助。现在,我将从类型“G”转换为类型“Integer exception”是无效的。