将字符串转换为Int / int64 / Decimal吗?

时间:2018-10-17 13:01:41

标签: string type-conversion int decimal

我实际上正在使用HP的模块,该模块具有系统的BIOS版本。在某些系统上,将字符串转换为整数很容易,因为它只有一个小数点。但是,现在我遇到了一些BIOS版本带有两个小数点的系统,并且不再可以使用[int]或[decimal]或[double]等。

因此,如果我有一个值为“ 02.01.06”的字符串,并且尝试将其类型更改为整数,则它将失败。 示例:

[int]$InstalledBiosVersion = Get-HPBiosVersion

无法将值“ 02.01.06”转换为类型“ System.Int32”。错误:“输入字符串的格式不正确。

我需要将字符串更改为整数,因为我正在将系统上安装的BIOS版本与可用的最新版本进行比较。因此,如果一个数字是-lt另一个数字,则说明BIOS已过期。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

没关系,我最终只删除了两位数字和。然后将其转换为小数。

[decimal]$InstalledBiosVersion = (Get-HPBiosVersion).Remove(0,4)