2013-08-30 2 views
0

Я использую StringBuilder.Replace в сценарии PowerShell, чтобы вырезать разрывы строк в текстовых полях перед выходом в файл журнала. Ниже приведен пример того, что я использую ... и он отлично работает в нашей среде разработки. Тем не менее, в живой среде никаких разрывов строк не удаляют вообще. Кто-нибудь знает, что может привести к тому, что он будет отличаться от окружающей среды к окружающей среде? На реальном сервере гораздо больше контента, но поскольку фактическая система идентична dev, все текстовые поля сами по себе.Sharepoint & PowerShell - StringBuilder.Replace

$log = "C:\mylogfile.csv" 
$newline = [System.Environment]::NewLine 
$sb2 = New-Object System.Text.StringBuilder 
$sb2.Append("Text fields") 
$sb2.Replace($newline,".") 
$sb2.ToString() | Out-File $log -Append 

ответ

1

Хорошо, закон sod, что я нашел решение вскоре после публикации здесь ..!

Следующие работы для меня. Я экспериментировал с «r» и «n» без везения, но, выполнив оба из них вместе с NewLine, все разрывы строк теперь удаляются:

$log = "C:\mylogfile.csv"  
$newline = [System.Environment]::NewLine 
$charsToStrip = "`r","`n", $newline 
$sb2 = New-Object System.Text.StringBuilder 
$sb2.Append("Text fields") 
foreach ($char in $charsToStrip) 
{ 
    $sb2.Replace($char,".") 
} 
$sb2.ToString() | Out-File $log -Append 
Смежные вопросы