From f5edd17069812f45adf14b1b5ffd5783ef3c8571 Mon Sep 17 00:00:00 2001 From: Niels de Groot Date: Mon, 3 Jan 2022 20:45:34 +0100 Subject: [PATCH] Replace hardcoded delimiter with a parameter and pass it along to Convert-FromCsv. To be used in cases where the fixedwidth data contains a comma. --- .../functions/ConvertFrom-FixedWidth.ps1 | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/ConvertFrom-FixedWidth/functions/ConvertFrom-FixedWidth.ps1 b/ConvertFrom-FixedWidth/functions/ConvertFrom-FixedWidth.ps1 index ac1fe2d..52c37df 100644 --- a/ConvertFrom-FixedWidth/functions/ConvertFrom-FixedWidth.ps1 +++ b/ConvertFrom-FixedWidth/functions/ConvertFrom-FixedWidth.ps1 @@ -1,7 +1,8 @@ function ConvertFrom-FixedWidth { Param( [parameter(Mandatory = $true)] [object] $FixedWidthTableText, - [parameter(Mandatory = $true)] [object] $ColumnIndexArray + [parameter(Mandatory = $true)] [object] $ColumnIndexArray, + [parameter(Mandatory = $false)] [string] $Delimiter = "," ) $columns = $ColumnIndexArray | Sort-Object @@ -17,7 +18,7 @@ function ConvertFrom-FixedWidth { $currentIndex = $_ if ($firstColumn -ne $true) { - $newLine = $newLine + "," + $newLine = $newLine + $Delimiter } $newLine = $newLine + $line.Substring($priorIndex, $currentIndex - $priorIndex).Trim() @@ -26,11 +27,11 @@ function ConvertFrom-FixedWidth { $firstColumn = $false } - $newLine = $newLine +"," + $_.Substring($currentIndex, $_.Length-$currentIndex).Trim() + $newLine = $newLine + $Delimiter + $_.Substring($currentIndex, $_.Length-$currentIndex).Trim() $newLine } - $converted = $delimited | ConvertFrom-Csv + $converted = $delimited | ConvertFrom-Csv -Delimiter $Delimiter return $converted } \ No newline at end of file