导出到csv时如何转换为文本而不是常规

时间:2016-07-20 16:12:38

标签: sql excel csv powershell

我使用windows powershell将sql查询导出到csv。这是代码:

$previousdate = (Get-Date).AddDays(-1).tostring("yyyyMMdd")
if ($previousdate.DayOfWeek -eq "Sunday") {$previousdate = $previousdate.AddDays(-2)}
$filename = "F:\User\test" + $previousdate + ".csv"

Invoke-Sqlcmd -ServerInstance dfasys2db-prd -InputFile "F:\User\Month End.sql" | ConvertTo-Csv -notype -Delimiter ","  | % {$_ -replace '"',''} | Select -Skip 1 | Out-File -FilePath $filename 

当我这样做时,它会导出到csv,但是excel列使用的是General格式,我需要文本格式,因为通用格式会在数据中留下特征。

导出时,列是否可以是文本而不是常规?

1 个答案:

答案 0 :(得分:2)

CSV文件是纯文本文件,其中不包含任何格式。如果在Excel中打开内容时需要将内容格式化为文本而不是常规内容,那么我建议使用Excel com对象,将格式配置为所需状态,然后将文件另存为Excel文件(XLS / XLSX)。