我有以下CSV文件示例:
000001,a,b,c ,,, 000002,d,e,f ,,, g
000003,g,h,i ,,, j
000004,k,l,m ,,, n
我的代码摘录如下:
Get-Content $Source |
ConvertFrom-Csv |
%{ $header = $false } {
$cv = $null;
$ColValue = $_.PSObject.Properties.Value | %{ if ($_) { $_.trim() } else { '' } }
if ($ExtractColumns -ne $null -and $ExtractColumns -ne "")
{
ForEach ($ExtractColItem in $ExtractColumns) {
ForEach ($ColValueItem in $ColValue) {
if ($ExtractColItem -eq $ColValue.IndexOf($ColValueItem))
{
{
代码完美无缺,直到遇到类似于我采样的csv文件。第1行包含4个有价值的项目(第5列,第6列和第7列为空白) $ _。PSObject.Properties.Value 表示形式到达第4列的末尾。文件中的其余行然后也读到第4列,而不是一直到7。
上午我错过了什么?我该如何解决?答案 0 :(得分:0)
已解决:在评论中使用Eris的帮助。评论如下:
ConvertFrom-Csv [-InputObject] <PSObject[]> [[-Delimiter] <Char> ] [-Header <String[]> ] [ <CommonParameters>]
谢谢Eris。 Stack Overflow社区帮助了我。应该更频繁地使用它......: - )