Ich versuche, PowerShell anzuweisen, eine Textdatei zu öffnen und eine bestimmte Kodierungsoption auszuwählen. Wenn diese Textdatei manuell in Word geöffnet wird, versucht sie standardmäßig, sie mit der japanischen Codierung zu öffnen und zeigt bestimmte Zeichen nicht korrekt an.Öffnen Sie ein Word-Dokument und geben Sie die Codierung mit PowerShell an.
Ich habe viele verschiedene Dinge ausprobiert, aber nichts funktioniert, also bin ich total fest.
Diese Textdatei muss unter anderem täglich in PDF konvertiert werden.
Meine aktuelle Skript ist wie folgt:
$wdFormatPDF = 17
$word = New-Object -ComObject Word.Application
$word.Visible = $true
$folderpath = "C:\Users\smirabile\Downloads\report-testing-destination\*"
$fileTypes = "accepted.spl"
Get-ChildItem -Path $folderpath -Include $fileTypes | ForEach-Object {
$path = ($_.FullName).Substring(0, ($_.FullName).LastIndexOf("."))
$doc = $word.Documents.Open($_.FullName)
$Word.Selection.PageSetup.Orientation = 1
$Word.Selection.PageSetup.LeftMargin = 20
$Word.Selection.PageSetup.RightMargin = 20
$doc.Select()
$Word.Selection.Font.Size = 9
$doc.SaveAs([ref]$path, [ref]$wdFormatPDF)
$doc.Close()
}
$word.Quit()
Stop-Process -Name WINWORD -Force
vergessen zu erwähnen, dass ich schon diesen Artikel lesen, aber ich finde es schwer zu verstehen, wo oder wie Sie den Code schreiben zu tun Dies. bisher habe ich $ Word.expression.Open ($ Encoding: = 65001) bekam dies nicht funktioniert und auch nicht so viele andere Varianten, die ich ausprobiert habe. Tut mir leid, aber ich bin nicht sehr erfahren mit Powershell, so würde jede Hilfe geschätzt werden. – Sal
Sie können benannte Parameter nicht verwenden. Alle Parameter müssen in der richtigen Reihenfolge bereitgestellt werden, nur eine nachlaufende Liste von Standardwerten kann weggelassen werden. Bitte schauen Sie sich das Beispiel an, das ich zur Verfügung gestellt habe. Es ist aus einem bestimmten Grund da. –
Entschuldigung, aber ich habe Ihr Beispiel aus irgendeinem Grund bis jetzt nicht gesehen! obwohl Ihr Code funktioniert, können Sie bitte erklären, warum es mehrere $ def in der Zeile gibt? – Sal