我正在嘗試匯入 csv 檔案并僅選擇數字高于某個值(80)的列:
import-csv 'C:\temp\t\xxxx.csv' | where-object {[int]$_.utilization -gt 80}
我得到的錯誤是:
無法將值“17 %”轉換為型別“System.Int32”。錯誤:“輸入字串的格式不正確。”
在行:57 字符:22
匯入-csv 'C:\temp\t\xxxx.csv' | where-object {[int]$_.utilization -gt 80}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
CategoryInfo : InvalidArgument: (:) [], RuntimeException
FullyQualifiedErrorId : InvalidCastFromStringToInteger
$_utilization似乎是一個物件
有什么想法嗎?
我嘗試使用 進行轉換$util = [int]$_.utilization,但出現以下錯誤:
無法將“System.Object[]”型別的“System.Object[]”值轉換為“System.Int32”型別。
在行:3 字符:1
$util = [int]$_.utilization
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
CategoryInfo : InvalidArgument: (:) [], RuntimeException
FullyQualifiedErrorId : ConvertToFinalInvalidCastException
uj5u.com熱心網友回復:
$_.utilization包含一個字串。要將數字前綴決議為整數,請先從字串中洗掉空格和百分號:
[int]($_.utilization -replace ' %$') -gt 80
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/528440.html
