Android 删除编辑文本字符串中的空格

Android 删除编辑文本字符串中的空格,android,android-edittext,Android,Android Edittext,在我的android应用程序中,我从编辑文本中获取字符串,并将其用作调用web服务和获取JSON数据的参数。 现在,我从编辑文本中获取字符串值的方法如下: final EditText edittext = (EditText) findViewById(R.id.search); String k = edittext.getText().toString(); 现在,它正常工作,但如果我们在编辑文本中的文本包含空间,那么我的应用程序崩溃 例如,如果有人在编辑文本框中键入“食物”,那么就可

在我的android应用程序中,我从编辑文本中获取字符串,并将其用作调用web服务和获取JSON数据的参数。 现在,我从编辑文本中获取字符串值的方法如下:

final EditText edittext = (EditText) findViewById(R.id.search);

String k = edittext.getText().toString();
现在,它正常工作,但如果我们在编辑文本中的文本包含空间,那么我的应用程序崩溃

例如,如果有人在编辑文本框中键入“食物”,那么就可以了 但如果有人输入“印度食物”,它就会崩溃

如何删除空格并只获取字符串?

这不就是Java吗

String k = edittext.getText().toString().replace(" ", "");
试试这个

final EditText edittext = (EditText) findViewById(R.id.search);

String k = edittext.getText().toString();

String newData  = k.replaceAll(" ", "%20");

并使用“newData”

您可以使用以下方法轻松删除所有空白。但如果你这么做,你将面临另一个严重的问题。例如,如果您有输入

String input1 = "aa bb cc"; // output aabbcc
String input2 = "a abbcc";  // output aabbcc
String input3 = "aabb cc";  // output aabbcc
一种解决方案是修复应用程序以接受输入字符串中的空格,或者使用其他文字来替换空格。如果您只使用字母数字值,您可以这样做

String input1 = "aa bb cc"; // aa_bb_cc
String input2 = "a abbcc";  //a_abbcc
String input3 = "aabb cc";  //aabb_cc
毕竟,如果你不在乎信息的散乱,你可以使用任何你想要的方法

String email=recEmail.getText().toString().trim();
String password=recPassword.getText().toString().trim();

在将来,我强烈建议检查中的Java字符串方法。它是充分利用Java环境的生命线。

您的解决方案似乎很完美,但我想问一下,为什么强调“新”的是Java。很抱歉,这是一个有点傻的问题。我本可以用谷歌搜索它。单引号
(“”)
正在出错。我使用双引号
(“”)
标记正在工作。例如:
String k=edittext.getText().toString().replace(“,”)