4 Pluspunkte 0 Minuspunkte

Wie kann ich in Batch aus einem Array einen komma separierten String erstellen?

set arr[0]="Hallo Welt"
set arr[1]=1
set arr[2]=3.14
von  

2 Antworten

0 Pluspunkte 0 Minuspunkte

Du kannst die einzelnen Indizes in einer Schleife aneinanderhängen.

setlocal enabledelayedexpansion

set arr[0]="Hallo Welt"
set arr[1]=1
set arr[2]=3.14

set delimiter=;
set str=

for %%i in (0 1 2) do (
    if defined str set "str=!str!!delimiter!"
    set "str=!str!!arr[%%i]!"
)

echo %str%
von (776 Punkte)  
0 Pluspunkte 0 Minuspunkte

In Powershell kannst du den Parameter -Join auf das Array anwenden.

$zahlen = @("Hallo Welt", 1, 3.14)
$ergebnis = $zahlen -join ";"
Write-Output $ergebnis
von (732 Punkte)