Powershell - разделить табуляцией CSV через строку и преобразовать в HTML - PullRequest
0 голосов
/ 17 января 2020

Я могу экспортировать файл таблицы HTML из CSV с разделителями табуляции, используя мой код ниже. Однако сейчас я пытаюсь экспортировать отдельные HTML на основе столбца сортировки ниже; Любая помощь с кодом ниже будет принята!

Код Powershell

    $Header = @"
<style>
TABLE {border-width: 1px;border-style: solid;border-color: black;border-collapse: collapse;}
TH {border-width: 1px;padding: 3px;border-style: solid;border-color: black;background-color: #6495ED;}
TD {border-width: 1px;padding: 3px;border-style: solid;border-color: black;}
</style>
"@

Import-Csv -delimiter "`t" -Path .\test.txt  | Select DATE,Recipeint,To,BODY,Sort| ConvertTo-Html -Head $Header| Out-File .\test.html

1 Ответ

1 голос
/ 17 января 2020

Вы можете сделать следующее, если вам нужно несколько HTML таблиц в одном файле:

Import-Csv -Path .\test.txt -Delimiter "`t" |
    Sort-Object {[int]$_.Sort} | Group-Object -Property Sort | Foreach {
        $_.Group | ConvertTo-Html -Head $header } | Out-File .\test.html

Если вы хотите вывести разделенные данные на несколько файлов, вы можете сделать следующее:

Import-Csv -Path .\test.txt -Delimiter "`t" |
    Sort-Object {[int]$_.Sort} | Group-Object -Property Sort | Foreach {
        $OutFile = ".\test{0}.html" -f $_.Group.Sort
        $_.Group | ConvertTo-Html -Head $header | Out-File $OutFile
    }

Объяснение:

Group-Object группирует объекты на основе значения свойства. Если мы сгруппируем свойство Sort, он вернет количество групп, соответствующих количеству различных Sort значений.

Для Sort-Object , свойство Sort равно сначала выполняется приведение к [int] для создания нумерации c.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...