Wie kann ich ein Array-Objekt in eine Zeichenkette umwandeln?
Ich habe es versucht:
$a = "This", "Is", "a", "cat"
[system.String]::Join(" ", $a)
ohne Erfolg. Was sind die verschiedenen Möglichkeiten in PowerShell?
$a = 'This', 'Is', 'a', 'cat'
Doppelte Anführungszeichen verwenden (und optional das Trennzeichen $ofs
verwenden)
# This Is a cat
"$a"
# This-Is-a-cat
$ofs = '-' # after this all casts work this way until $ofs changes!
"$a"
Verwendung des Operators join
# This-Is-a-cat
$a -join '-'
# ThisIsacat
-join $a
Konvertierung in [string]
verwenden
# This Is a cat
[string]$a
# This-Is-a-cat
$ofs = '-'
[string]$a
Ich habe festgestellt, dass die Übergabe des Arrays an das Cmdlet Out-String
ebenfalls gut funktioniert.
Zum Beispiel:
PS C:\> $a | out-string
This
Is
a
cat
Es hängt von Ihrem Ziel ab, welche Methode am besten geeignet ist.
Sie können den Typ wie folgt angeben:
[string[]] $a = "This", "Is", "a", "cat"
Überprüfen des Typs:
$a.GetType()
Bestätigt:
IsPublic IsSerial Name BaseType -------- -------- ---- --------True True String[] System.Array
$a ausgeben:
PS C:\> $a Diese ist a cat