首页 > 解决方案 > Powershell import-csv 一个没有标题的 csv ~1200 列

问题描述

我有一个没有标题行的 csv 文件(实际上只有 1 行)和大约 1200 列。我需要导入 csv,但如果我运行它 import-csv 它将第一列视为标题,所以我什么也得不到。有什么方法可以在不输入 1200 个标题的情况下做到这一点?一些项目在列中有逗号。

标签: powershellcsv

解决方案


你可以伪造标题。这确实意味着您需要引用每个属性来访问该值。

$headers = 1..1200
$data = Import-Csv file.csv -Header $headers

每个数据行(非标题行)被读入一个数组 ( $data),它的索引从 0 开始。这意味着数据行 1 列 1 由 访问$data[0].1。数据第 2 行和第 4 列将是$data[0].4. 如果有数据行 5 和列 900,它将是$data[4].900

如果您只想查看没有标题的 CSV 数据,可以执行以下操作:

$data | ConvertTo-Csv -NoType | Select -Skip 1

推荐阅读