Import-CSV 将 header 行输出为单个 属性
Import-CSV outputs the header row as a single property
我 运行 遇到了一个非常烦人的问题,涉及尝试使用 Import-CSV 从 csv 文件中获取特定单元格。
就其他答案向我展示的而言,我已按照说明进行操作:
假设我们有一个 csv 文件,其中包含名为 col1、col2、col3、col4 等的列
$importedCSV = Import-CSV csvfile.csv
$importedCSV
col1;col2;col3;col4
-------------------
itm1;itm2;itm3;itm4
itm5;itm6;itm7;itm8
到目前为止,它似乎运行良好,如果我执行 $importedCSV[0]
和 $importedCSV[1]
,它将像正常情况一样过滤掉相应的 non-selected 行。
当我尝试调用像 $importedCSV[0].col2
这样的特定单元格时出现问题,它根本不会显示任何内容,如果我在点后按 Tab,它会自动完成为 'col1;col2;col3;col4',如果我执行 $importedCSV | Get-Member
,它还将 'col1;col2;col3;col4' 显示为单个字符串 属性,我认为这就是无法从 csv 文件中获取特定单元格的原因。
我相信我发现了问题所在,我正在使用西班牙语 Excel 生成我的 CSV,它使用 ;
而不是 ,
作为分隔符,分隔符必须在 powershell 命令中手动设置为 ;
,如下所示:
Import-Csv -Path .\csvfile.csv -Delimiter ";"
问题解决了。
我 运行 遇到了一个非常烦人的问题,涉及尝试使用 Import-CSV 从 csv 文件中获取特定单元格。
就其他答案向我展示的而言,我已按照说明进行操作: 假设我们有一个 csv 文件,其中包含名为 col1、col2、col3、col4 等的列
$importedCSV = Import-CSV csvfile.csv
$importedCSV
col1;col2;col3;col4
-------------------
itm1;itm2;itm3;itm4
itm5;itm6;itm7;itm8
到目前为止,它似乎运行良好,如果我执行 $importedCSV[0]
和 $importedCSV[1]
,它将像正常情况一样过滤掉相应的 non-selected 行。
当我尝试调用像 $importedCSV[0].col2
这样的特定单元格时出现问题,它根本不会显示任何内容,如果我在点后按 Tab,它会自动完成为 'col1;col2;col3;col4',如果我执行 $importedCSV | Get-Member
,它还将 'col1;col2;col3;col4' 显示为单个字符串 属性,我认为这就是无法从 csv 文件中获取特定单元格的原因。
我相信我发现了问题所在,我正在使用西班牙语 Excel 生成我的 CSV,它使用 ;
而不是 ,
作为分隔符,分隔符必须在 powershell 命令中手动设置为 ;
,如下所示:
Import-Csv -Path .\csvfile.csv -Delimiter ";"
问题解决了。