2017-01-31 8 views
1

私は定期的に監査電子メールを送信するコンソールアプリケーションを持っています。電子メールにはスペイン語と英語の両方があります。ダイナミックテキストをドットネットで英語からスペイン語に翻訳する

監査日もメールで送信しています。たとえば、Monday、January 09、2017。このテキストもまたスペイン語に変換したい。サードパーティのツールを使用して英語をスペイン語に変換する方法はありますか?

リソースファイルを使用して翻訳することはできません。この場合、テキストはdbから来る動的なものであり、すべてのメールに対して変更されるためです。

+0

英語とスペイン語のメール本文はどちらもデータベースにありますか? –

+0

参照:http://stackoverflow.com/questions/9022100/datetime-tostring-month-and-day-language –

答えて

3

あなたは文字列のメソッドにスペイン文化を指定することができます。

DateTime dt = DateTime.Now; 
// Creates a CultureInfo for Spanish 
CultureInfo ci = new CultureInfo("es"); 
var strFormat = "ddd MMM dd,yyyy"; //please use yours format 
Console.WriteLine(dt.ToString(strFormat, ci)); 
+0

ありがとうございます。私はこれを試してみます –

+0

それは働いた!ありがとう! –

2
using System.Globalization; 

var date = DateTime.Parse("Monday, January 09, 2017"); 
var culture = new CultureInfo("es-ES"); 
Console.WriteLine(date.ToString("D", culture)); 

出力

lunes, 9 de enero de 2017 
0

をあなたはMailMessage.BodyEncodingプロパティを見てみる場合は、次の点に注意しましょう:

The default character set is "us-ascii".

送信する前に、あなたのエンコーディングを変更してみてください:

message.BodyEncoding = Encoding.UTF8; 

を(私はあなたがSystem.Net.Mail.MailMessageを使用して送信していると仮定しています。 System.Net.Mail.SmtpClientを直接使用している場合は、MailMessageクラスを使用し、そのインスタンスをに渡すことをおすすめします。

関連する問題