0

看看这个: edittext 问号 android

我正在收到文本editText.getText().toString()。更换 � 无济于事。

戴夫这是给你的一段代码,我不知道我还能在这里放什么。

final EditText login = (EditText) findViewById(R.id.editText1)
button.setOnClickListener(new View.OnClickListener() {
            public void onClick(View v) {
                Context context = getApplicationContext();
                if (login.getText().toString().equals("")) {
                    Toast.makeText(context, textBad, duration).show();
                } else {
                    button.setEnabled(false);
                    Toast.makeText(context, textGood, duration).show();
                    apiKey = login.getText().toString();
                    try {
                        FileOutputStream fos = openFileOutput(FILENAME,
                                Context.MODE_PRIVATE);
                        fos.write(apiKey.getBytes());
                        fos.close();
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                    Log.v("EditText", login.getText().toString());
                    String zz = login.getText().toString().replace(" ", "")
                            .replace("�", "");
                    String[] dupcia = new String[] { zz };
                    new RetreiveFeedTask().execute(dupcia); 
                    Log.e("heja", ":)");

            }

        }

    });
4

2 回答 2

0

该字符表明您的字符编码有问题。

来自特价(Unicode 块)维基百科文章

U+FFFD �:用于替换未知或不可表示字符的替换字符

如果不了解您的应用程序的更多信息,就很难确定您的具体问题。如果您要设置此 EditText 的文本,请确保您在所有地方都使用相同的字符编码。如果此文本是由用户设置的,我很好奇您如何从键盘获取非 Unicode 字符。

于 2013-11-08T20:52:59.050 回答
0

尝试这个regex expr

str.replaceAll("[^\\p{Alpha}\\p{Digit}]+","")
于 2013-11-08T20:47:06.173 回答