gpt4 book ai didi

powershell - ConvertFrom-String 返回符号而不是文本

转载 作者:行者123 更新时间:2023-12-05 00:10:49 27 4
gpt4 key购买 nike

使用学生文本名称 Infinity 执行以下代码将返回无穷大符号而不是实际文本。任何人都可以解释为什么会这样以及可以做些什么来纠正。

$person="Infinity,One"
$personsplit=$person | ConvertFrom-String -Delimiter "," -PropertyNames firstname,surname
$personsplit返回以下输出
名字现在是一个符号而不是文本数据?
期望看到输出为
first name surname
--------- -------
Infinity One
但是,它返回以下内容
firstname surname  
--------- -------
∞ One
对于任何感兴趣的人,我目前正在运行以下版本的 powershell
PS C:\WINDOWS\system32> $psversiontable

Name Value
---- -----
PSVersion 5.1.17763.503
PSEdition Desktop
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.17763.503
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1

最佳答案

您似乎发现了 ConvertFrom-String 的错误/怪癖尝试自动转换它创建的值,在您的情况下似乎采用字符串 'Infinity' 而转换为 [single]::PositiveInfinity .

另一种更安全的解决方案是不使用 ConvertFrom-String而是做这样的事情:

$person="Infinity,One"
$personsplit = $person -split ','

[pscustomobject]@{
firstname = $personsplit[0]
lastname = $personsplit[1]
}

如果您不介意它们处于单独的变量中,您也可以这样做:
$firstname,$lastname = $person -split ','

关于powershell - ConvertFrom-String 返回符号而不是文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56423113/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com