Hvordan kan jeg konvertere et array-objekt til streng?
Jeg har prøvd:
$a = "This", "Is", "a", "cat"
[system.String]::Join(" ", $a)
uten hell. Hva er forskjellige muligheter i PowerShell?
$a = 'This', 'Is', 'a', 'cat'
Bruke doble anførselstegn (og eventuelt bruke skilletegn $ofs
)
# This Is a cat
"$a"
# This-Is-a-cat
$ofs = '-' # after this all casts work this way until $ofs changes!
"$a"
Bruke operator join
# This-Is-a-cat
$a -join '-'
# ThisIsacat
-join $a
Bruke konvertering til [string]
# This Is a cat
[string]$a
# This-Is-a-cat
$ofs = '-'
[string]$a
Jeg fant ut at piping av arrayet til Out-String
cmdlet fungerer også bra.
For eksempel:
PS C:\> $a | out-string
This
Is
a
cat
Hvilken metode som er best å bruke, avhenger av målet ditt.
Du kan spesifisere type slik:
[string[]] $a = "This", "Is", "a", "cat"
Kontrollerer typen:
$a.GetType()
Bekrefter:
IsPublic IsSerial Name BaseType -------- -------- ---- --------True True String[] System.Array
Utdata $a:
PS C:\> $a Dette er a cat