2016-05-30 3 views
-1

Я пытаюсь заменить персонаж, который пришел "." его следует заменить на "". но он не работает для меня. пожалуйста, кто-нибудь скажет мне, что мне не хватает в моем коде?Как заменить символ в Android?

 // that variable is define publically 
     public class QuizActivity extends Activity { 
     private static String ans = null; 
     int j = 0; 

    //here some functionality 

    next.setOnClickListener(new View.OnClickListener() { 

          @Override 
          public void onClick(View v) { 
           // TODO Auto-generated method stub 
           empty(); 
           checkbox_enable(); 
           Custom_checkbox(); 

           final int arraysize = data.size(); 

            j++; 
           if(j<arraysize){ 

            String Quiz_no = data.get(j).getQuiz_no(); 
            String Question = data.get(j).getQuestion(); 
            op1 = data.get(j).getAnswer_1().trim().toString(); 
            ans = data.get(j).getAns().trim(); 
            String answer=ans.toString(); 


            for (int k = 0; k < answer.length(); k++) { 

             if (answer.charAt(k) == '.') { 


              answer.replace(".", ""); 



             }if (answer.charAt(k) == ' ') { 

              answer.replace(" ", ""); 
            String temp = answer; 
           Toast.makeText(QuizActivity.this, "replaced "+temp, 

Toast.LENGTH_LONG).show(); 
             } 
            } 

пожалуйста, помогите мне. он не работает для меня

+3

http://stackoverflow.com/questions/7380626/how-to-replace-dot-in-a-string-in-java –

+0

Вам необходимо сохранить выходные данные 'answer.replace (". "," "); в некоторой переменной. –

ответ

0

Потому что replace или replaceAll не перезаписывает строку. Вы должны использовать:

answer = answer.replaceAll(".", ""); 
answer = answer.replaceAll(" ", ""); 
+0

не заменить, не работает @Burak Day –

+0

@saim проверить новый ответ –

+1

его Работа для меня сейчас @Burak Day –

1

replaceAll просто использовать на строку, которую вы хотите заменить.

Для примера

String test = "hello.say.something"; 
test.replaceAll(".",""); 
Toast.makeText(getApplicationContext(),test,Toast.LENGTH_SHORT).show(); 

Результат: hellosaysomething

Счастливый кодирования ..

0

Вы должны знать, что Strings неизменны, так что вам нужно, чтобы сохранить выход answer.replace(".", ""); в некоторой новой переменной или той же переменной. является

String replacedString = null; 

for (int k = 0; k < answer.length(); k++) { 
    if (answer.charAt(k) == '.') { 
     replacedString = answer.replace(".", ""); 

    }if (answer.charAt(k) == ' ') { 
     replacedString = answer.replace(" ", ""); 
    } 
} 

ИЛИ

answer = answer.replace(".", ""); 
1

Возможный дубликат How to Replace dot (.) in a string in Java.

Итак, вместо того, чтобы перебирать вашу строку ответа и проверять каждый символ, вы можете просто использовать .replaceAll. Поэтому измените код на что-то вроде этого:

... 
if(j<arraysize){ 
    String Quiz_no = data.get(j).getQuiz_no(); 
    String Question = data.get(j).getQuestion(); 
    op1 = data.get(j).getAnswer_1().trim().toString(); 
    ans = data.get(j).getAns().trim(); 
    String answer=ans.toString(); 
    //no need to loop through answer-string 
    answer = answer.replaceAll(".",""); 
} 

Надеюсь, это поможет.

+0

не работает еще @ishmaelMakitla –

+0

Отредактировано код - 'answer = answer.replaceAll (". "," ");' - это должно это сделать. – ishmaelMakitla

 Смежные вопросы

  • Нет связанных вопросов^_^