2011-06-18 25 views
9

Apache Commons E-postası ile oluşturulan bir e-postanın kodlamasını UTF-8'e nasıl değiştirirsiniz? Alıcının diline bağlı olarak oluşturduğum e-postaları göndermek istiyorum ve Japonca ve Rusça'yı hesaba katmam gerek. Sorun şudur: E-posta sınıfı, Email.setCharset yöntemine iletebileceğim bir UTF-8 sabiti önermez. Bir ipucu?Apache Commons E-posta ve UTF-8

cevap

9

Apache Commons e-posta API UTF_8 için sabit olmalı görünüyor:

olarak http://commons.apache.org/email/apidocs/src-html/org/apache/commons/mail/EmailConstants.html#line.38 tanımlanır
UTF_8 

static final String UTF_8 
See Also: 
    Constant Field Values 

All Known Implementing Classes: 
    Email, HtmlEmail, ImageHtmlEmail, MultiPartEmail, SimpleEmail 

: Eğer çalışıyorsanız

String UTF_8 = "utf-8"; 

http://commons.apache.org/email/apidocs/org/apache/commons/mail/EmailConstants.html

+0

Eğer doğru alırsam, bu 1.3-SNAPSOT sürümüdür. –

+0

Sabit değere referans vermek yerine dize değerini ayarlamayı denediniz mi? –

+0

1.3-SNAPSHOT ile çalıştı. Umarım bir gün serbest bırakacaklardır ... –

2

Bkz 1.2 sürümü ile, yöntem bir String'i kabul edene kadar ve siz yokken bir UnsupportedCharsetException atana kadar kendi sabitinizi yaratabilirsiniz. JVM'de adlandırılmış karakter kümesi desteği.

Mümkünse, Apache commons lang'deki CharEncoding sınıfında UTF_8 sabitini kullanabilirsiniz.

İlgili konular