2011-11-18 26 views
15

Po prostu chcę, aby zastąpić znak innym w android .. Mój kod:Zastąpienie znaku inną postacią w ciągu znaków w systemie Android?

et = (EditText) findViewById(R.id.editText1); 
String str = et.getText().toString(); 
str.replace(' ','_'); 
et.setText(str); 
System.out.println(str); 

Ale tutaj „przestrzeń” nie jest zastąpiony przez „podkreślenia” .. Próbowałem też inny charakter zbyt ..

prosze o pomoc!

Odpowiedz

54

Ciągi są niezmienne w Javie - replace nie zmienia istniejącego ciągu znaków, zwraca nowy. Chcesz:

str = str.replace(' ','_'); 

(Jest to zdecydowanie duplikat, ale nie mam wystarczająco dużo czasu, już teraz, aby znaleźć odpowiednią jeden ...)

+0

Dzięki za odpowiedź .. natychmiastowego działa !! – prg

6

String jest niezmienna i nie można go zmienić. Tak, trzeba to zrobić:

str = str.replace(' ','_'); 
1

widoczny kod:

et = (EditText) findViewById(R.id.editText1); 
String str = et.getText().toString(); 
str = str.replace(' ', '_'); 
System.out.println(str); 
Powiązane problemy