android如何解析包含日文或中文字符的mailto url

时间:2013-07-12 04:08:12

标签: android mailto

我试图使用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

我该如何解决?

1 个答案:

答案 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());