无法在Android 4.0 +中处理UTF-8字符

时间:2015-06-26 08:12:59

标签: android android-intent utf-8

我开发了一个Android应用程序并设置了minSDK 14(android 4.0 +)。我想使用UTF-8个字符( RTL语言)。但是当显示此文本而不是字母时,问号显示!!!

请参阅此图片以了解我的意思:Image 1 ------ Image 2

我的代码示例:

mDrawerLayout.closeDrawer(GravityCompat.END);
String mobile_model = Build.MODEL;
String mobile_factory = Build.MANUFACTURER;
String mobile_android = Build.VERSION.RELEASE;
Intent email = new Intent(Intent.ACTION_SEND);
email.putExtra(Intent.EXTRA_EMAIL, new String[]{"tellfa.group@gmail.com"});
email.putExtra(Intent.EXTRA_SUBJECT, "5دقیقه - انتقاد و پیشنهاد");
email.putExtra(Intent.EXTRA_TEXT, "متن مورد نظر شما" + "\n\n\n\n\n" + "------------------" +
                    "\n" + "لطفا موارد زیر را پاک نکنید" +
                    "\n" +"مدل گوشی شما : " + mobile_model +
                    "\n" + "شرکت سازنده گوشی : " + mobile_factory +
                    "\n" + "نسخه اندروید شما : " + mobile_android);
            email.setType("message/rfc822");
            startActivity(Intent.createChooser(email, "سرویس دهنده را انتخاب کنید"));

如何解决问题?

1 个答案:

答案 0 :(得分:0)

您必须使用代码更改文字的编码

例如:

String txt = URLEncoder.encode("5دقیقه - انتقاد و پیشنهاد", "UTF-8");
email.putExtra(Intent.EXTRA_SUBJECT, txt);

将此代码用于所有波斯语附加内容