从EditText获取文本会产生问号

时间:2013-11-08 20:11:33

标签: android android-edittext

看看这个: edittext question marks 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", ":)");

            }

        }

    });

2 个答案:

答案 0 :(得分:0)

试试这个regex expr

str.replaceAll("[^\\p{Alpha}\\p{Digit}]+","")

答案 1 :(得分:0)

该字符表示您的字符编码存在问题。

来自Specials (Unicode block) Wikipedia Article

  

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

在不了解您的应用程序的情况下,很难确定您的具体问题。如果要设置此EditText的文本,请确保在所有位置使用相同的字符编码。如果这个文本是由用户设置的,我很好奇你如何从键盘上获得非unicode字符。