我通过powershell发送一个testemail,如
$messageParameters = @{
Subject = "Email Tool"
Body = Get-Content "C:\body.txt" | out-string
From = "Info <info@xy.de>"
To = "Me <me@xy.de>"
SmtpServer = "mail.xy.de"
Encoding = New-Object System.Text.UTF8Encoding
}
send-mailmessage @messageParameters -BodyAsHtml
除编码外,一切正常。
如果我不使用编码,则某些字符会以??
如果我使用它,我真正想要做的,而不是我得到这个Ä Ö Ãœ
但它应该是ä ö ü
,而不是上面的内容。
如果我不以HTML格式发送邮件,那就可以了。
如何使用正确的编码AND以html格式发送邮件?
答案 0 :(得分:3)
我认为问题在于,当您将文本文件作为非utf8读入变量时,文本文件会变得混乱。
我会尝试将文本文件作为UTF-8并保留编码行。
Body = Get-Content "C:\body.txt" -Encoding UTF8 | Out-String
编辑:为每个Dwza添加Out-String。