0 Pluspunkte 0 Minuspunkte
Wie kann ich in Powershell Daten aus einer CSV Datei lesen oder darin speichern?
von  

2 Antworten

0 Pluspunkte 0 Minuspunkte

Mit dem Cmdlet Export-Csv kannst du die Daten als CSV Datei speichern.

$daten = @(
    [PSCustomObject]@{ Name = "Alice"; Alter = 30 },
    [PSCustomObject]@{ Name = "Bob"; Alter = 25 },
    [PSCustomObject]@{ Name = "Carol"; Alter = 40 }
)

$daten | Export-Csv -Path "test.csv" -NoTypeInformation

Und lesen kannst du sie mit Import-Csv.

$daten = Import-Csv "test.csv"

$daten | ForEach-Object {
    "Name: $($_.Name), Alter: $($_.Alter)"
}
von  
0 Pluspunkte 0 Minuspunkte

Daten in eine CSV Datei schreiben.

# Array aus Arrays
$newData = @(
    @("Max Mustermann", 30, "max@example.com"),
    @("Erika Musterfrau", 25, "erika@example.com")
)

# Pfad zur Zieldatei
$outputCsvPath = "test.csv"

# Header in CSV-Datei schreiben
$header = "Name", "Alter", "Email"
$header -join "," | Out-File -FilePath $outputCsvPath

# Daten in CSV-Datei schreiben
$newData | ForEach-Object { $_ -join "," } | Add-Content -Path $outputCsvPath

Daten aus einer CSV Datei lesen.

# Pfad zur CSV-Datei
$csvPath = "test.csv"

# Daten aus der CSV-Datei lesen
$data = Import-Csv -Path $csvPath

# Die $data Variable enthält jetzt ein Array von Objekten, wobei jedes Objekt eine Zeile aus der CSV-Datei repräsentiert.
# Du kannst auf die Daten zugreifen, indem du auf die Eigenschaften der Objekte zugreifst.
foreach ($row in $data) {
    Write-Host "Name: $($row.Name), Alter: $($row.Alter), Email: $($row.Email)"
}

von