簡體   English   中英

無法從空的.txt文件執行export-csv

[英]Unable to do export-csv from an empty .txt file

我正在嘗試從一個空的文本文件中創建一個csv文件。該csv文件應該僅使用標頭創建,因為文本文件中不存在任何數據,但是我的代碼正在創建一個完整的空白csv文件而不包含標頭。以下代碼缺少什么?

 import-csv -Path "C:\Powershell-Work\EmtyTest.txt" -Header Date,Time,'R Site',Status,Comments |
 Select-Object 'Process Date',Date,Time,'R Site',Status,Comments| 
 Export-csv -path "C:\Powershell-Work\EmtyTest.csv" -NoTypeInformation

因為EmtyTest.txt是空白文件,所以Import-CSV會生成一個空數組。

由於源數據為空,因此您的輸出文件也將為空白。

CSV文件只是文本,因此您可以通過字符串創建它:

'"Process Date","Date","Time","R Site","Status","Comments"' | Out-File -FilePath "C:\Powershell-Work\EmtyTest.csv"

顯然,不需要從空白文本文件導入,因為您可以使用所需的標題動態創建csv 多種方法之一是創建PSObject並將headers添加為PropertyName同時可以將valuesNULL 以下是一個示例-

$csvContents = @()

$row = New-Object System.Object # Create an object to append to the array
$row | Add-Member -MemberType NoteProperty -Name "Process Date" -value ""
$row | Add-Member -MemberType NoteProperty -Name "Date" -value ""
$row | Add-Member -MemberType NoteProperty -Name "Time" -value ""
$row | Add-Member -MemberType NoteProperty -Name "R Site" -value ""
$row | Add-Member -MemberType NoteProperty -Name "Status" -value ""
$row | Add-Member -MemberType NoteProperty -Name "Comments" -value ""

$csvContents += $row

$csvContents | Export-CSV -Path C:\Powershell-Work\EmtyTest.csv -NoTypeInformation

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM