При работе с PowerShell иногда требуется преобразовать строковый тип данных (String) в числовой (Int). Для этого есть много различных способов, рассмотрим некоторые из них.
Для примера создадим переменную, поместим в нее данные в текстовом формате и проверим тип:
$a = ″100″
$a.GetType().FullName
Как видите, переменная имеет тип System.String.
А теперь попробуем сконвертировать переменную в тип System.Int32.
Самый простой способ — это просто переназначить для переменной тип данных:
$b = [int]$a
Можно воспользоваться оператором -as, например:
$c = $a -as[int]
Также можно сконвертировать тип данных с помощью метода ToInt32 статического класса Сonvert:
$d = [Сonvert]::ToInt32($a,10)
Примечание. Метод Toint32 принимает в качестве второго аргумента систему счисления, в которую производится конвертация. Можно указать не только десятичную, но и любую другую систему, например двоичную или шестнадцатеричную.
Каким бы способом вы не воспользовались, получившаяся в результате переменная имеет тип System.Int32.
+ [System.Int32]::Parse($a)