灵活替代CInt?

时间:2014-10-10 18:37:34

标签: .net vb.net xamarin type-conversion portable-class-library

我有一些旧的代码,广泛使用CInt,CStr和类似的。我正在更新这个,所以我们可以在它上面使用PCL用于Xamarin / Mono目标。 Xamarin不提供这些方法(因为它们是VisualBasic命名空间的一部分),尽管通常会提供基础方法。

但我很困惑PCL允许的呼叫实际上与这些功能匹配。 CInt将获取一个字符串,另一个int,一个double,几乎任何东西,并返回一个Integer。但...

  • Integer.Parse / TryParse只接受字符串,你不能传入double等等。
  • System.Convert.ToInt16 / 32/64似乎更灵活,但它与Integer相同?

是否直接替代CInt,CDbl等?

1 个答案:

答案 0 :(得分:1)

替换是:

  • ConvertToInt32与Integer相同,它将像CInt()一样完成工作。 ConvertToInt64用于Long,ToInt16用于小值。
  • 施法> int result =(int)value; 将值转换为int。它与转换它不一样,但如果可能的话,它将适用于双倍,浮动,长...
  • Int.Parse,Int.TryParse。正如您早期指出的那样,它只会解析一个字符串以在Integer上转换它。

猜猜您需要的最佳选择是ConvertToInt32。