我试图使用MailTo.parse(url)解析包含日文或中文字符的mailto url,但它返回null。 英文字符没问题。我该如何解决? 有我的代码和logcat:
try {
url = URLDecoder.decode(url,"UTF-8");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Log.d(TAG, "url: " + url);
MailTo mt = MailTo.parse(url);
Log.d(TAG, "body: " + mt.getBody());
Log.d(TAG, "subject: " + mt.getSubject());
07-12 12:50:34.861: D/Fbaku(9484): url: mailto:?subject=幕末の時代を生き抜け!&body=iPhoneとiPod Touch対応の風雲幕末史を一緒にやりませんか?
07-12 12:50:34.861: D/Fbaku(9484): subject: null
07-12 12:50:34.861: D/Fbaku(9484): body: null
编辑:抱歉,我的mailto网址包含正文中的链接:https://stackoverflow.com/posts/17607307
所以MailTo.parse(url).getBody()和MailTo.parse(url).getSubject()返回NULL
我该如何解决?
答案 0 :(得分:0)
尝试使用 toString()方法
所以更改
Log.d(TAG, "body: " + mt.getBody());
Log.d(TAG, "subject: " + mt.getSubject());
到
Log.d(TAG, "body: " + mt.getBody().toString());
Log.d(TAG, "subject: " + mt.getSubject().toString());