我正在尝试通过powershell将整数(或字符串中的数字)转换为guid,我已经使用了以下内容并且无法找到其他方法。它有可能吗?
$myId = [System.Guid]::Parse("123456789")
Exception calling "Parse" with "1" argument(s): "Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)."
当我没有引号时也会发生同样的情况,仅在解析函数中编号。
答案 0 :(得分:2)
你不能。 GUID是128位值,方式大于普通整数。 parse method需要良好的输入。
要将整数转换为guid,请尝试添加前导零。像这样,
[System.Guid]::Parse("0"*23 + "123456789")
Guid
----
00000000-0000-0000-0000-000123456789
答案 1 :(得分:1)
尝试
$myId = [System.Guid]::Parse("12345678-1234-1234-1234-123456789123")
$myId | gm
TypeName: System.Guid
答案 2 :(得分:0)
这是一种更动态的方式,它考虑了代表整数的字符串的长度
$foo = 123456
[System.Guid]::Parse("0"*(32-$foo.ToString().Length) + $foo.ToString())