Мне нужно изменить столбец CSV, в котором нет заголовков.
Вот мои тестовые данные с заголовками:
data.csv:
order|color|shape
1|green|square
1|red|rectangle
А вот что я использовал, чтобы изменить первый столбец на 0.
$ImportedCSV = Import-CSV data.csv -Delimiter '|'
$NewCSV = Foreach ($Entry in $ImportedCsv) {
Switch ($Entry."order") {
1 {$Entry."order" = "0"}
}
$Entry
}
$NewCSV | Export-CSV done.csv -Delimiter '|' -NoTypeInformation
(Get-Content -Path done.csv ).Replace('"','') | Set-Content -Path done.csv
В результате получилось следующее:
order|color|shape
0|green|square
0|red|rectangle
В моем файле data.csv не будет заголовков для начала.
Может ли "Switch ($ Entry." Order ")" использовать номера столбцов вместо имени заголовка?
Итак, что-то вроде "Столбец 1", а не "order"?
Пожалуйста, не упоминайте о простом добавлении заголовков, а затем удалите заголовки, когда закончите.
В конце мне нужно изменить данные столбца на основе номера столбца, а не имени заголовка.
Итак ... замените ($ Entry. "Order") на что?
($ Entry.Column 1) = нет
($ Entry.Column-1) = нет
Спасибо за любую помощь.