У меня есть текстовый файл, который использует фиксированную ширину для разделения столбцов.Экспорт фиксированной ширины Powershell
Я загружаю файл и создаю новый столбец, который объединяет значения первых двух столбцов. У меня есть проблема, что при экспорте данных мне нужно определить ширину фиксированного столбца 13 для столбца C.
Column A (3) Column B(9) Column C(13)
MMA 12345 12345_MMA
MMO 987222 987222_MMO
В основном для этого примера в экспорте мне не хватает 4 пробела для первой строки и 3 для второй ряд.
Это мой текущий код, который также включает новую строку для создания MD5.
# Load input data
$PreSystem = [IO.File]::ReadAllText("C:\FILE.txt")
# Initiate md5-hashing
$md5 = new-object -TypeName System.Security.Cryptography.MD5CryptoServiceProvider
$utf8 = new-object -TypeName System.Text.UTF8Encoding
# Split input data by lines
$all = $PreSystem.split("`n")
# Loop over lines
for($i = 0; $i -lt $all.length-1; $i += 1) {
# Access distinct lines
$entry = "$($all[$i])"
# Get the different parameters
$market_code = $entry.substring(1,3)
$soc = $entry.substring(4,9)
# Hash the SOC element
$hash = [System.BitConverter]::ToString($md5.ComputeHash($utf8.GetBytes($soc)))
# Create desired format for each entry
$output = $hash.Replace("-","")+$soc.Replace(" ","") + "_" + $market_code + $all[$i]
# Write to file
"$output" | Out-File -Filepath C:\"C:\FILE.txt" -Append -encoding ASCII
}
Заранее спасибо
Пожалуйста, покажите свой код. Может быть полезным и пример фактического и желаемого результата. –