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

发布于 2024-11-06 22:52:14 字数 361 浏览 2 评论 0原文

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

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

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

现在通常它工作正常,但如果我们编辑文本中的文本包含空格,那么我的应用程序就会崩溃。

例如。 - 如果有人在编辑文本框中输入“食物”,那就没问题 但如果有人输入“印度食物”,它就会崩溃。

如何删除空格并仅获取 String ?

In my android app, I am getting the String from an Edit Text and using it as a parameter to call a web service and fetch JSON data.
Now, the method I use for getting the String value from Edit Text is like this :

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

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

Now normally it works fine, but if we the text in Edit Text contains space then my app crashes.

for eg. - if someone types "food" in the Edit Text Box, then it's OK
but if somebody types "Indian food" it crashes.

How to remove spaces and get just the String ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

你在看孤独的风景 2024-11-13 22:52:14

这不就是Java吗?

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

Isn't that just Java?

String k = edittext.getText().toString().replace(" ", "");
欲拥i 2024-11-13 22:52:14

试试这个......

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

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

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

并使用“newData”

try this...

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

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

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

and use "newData"

梦幻的心爱 2024-11-13 22:52:14
String email=recEmail.getText().toString().trim();
String password=recPassword.getText().toString().trim();

将来,我强烈建议检查 API< 中的 Java String 方法< /a>.它是充分利用 Java 环境的生命线。

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

In the future, I highly recommend checking the Java String methods in the API. It's a lifeline to getting the most out of your Java environment.

兔小萌 2024-11-13 22:52:14

通常对于 Web 服务,搜索查询需要附加“+”符号。

例如,如果我们有Indian Food,它应该像Indian+Food一样发送,

所以,为了得到它,我们可以使用以下...

String k = edittext.getText().toString().trim().replace(" ", "+");

Normally for web services, searching a query needs to be appended with '+' symbol.

e.g if we have Indian Food, it should be sent like Indian+Food

So, to get that we can use following...

String k = edittext.getText().toString().trim().replace(" ", "+");
温馨耳语 2024-11-13 22:52:14
String userName=username_edt.getText().toString().trim();

如果使用 trim() 它将删除空格

String userName=username_edt.getText().toString().trim();

if use trim() it will remove spaces

南街女流氓 2024-11-13 22:52:14

您可以使用诸如 this 之类的内容轻松删除所有空格。但如果你这样做的话,你将面临另一个严重的问题。例如,如果您有输入,

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

毕竟,如果您不关心信息的松散,则可以使用任何您想要的方法。

You can easily remove all white spaces using something like this. But you'll face another serious problem if you just do that. For example if you have input

String input1 = "aa bb cc"; // output aabbcc
String input2 = "a abbcc";  // output aabbcc
String input3 = "aabb cc";  // output aabbcc

One solution will be to fix your application to accept white spaces in input string or use some other literal to replace the white spaces. If you are using only alphanumeric values you do something like this

String input1 = "aa bb cc"; // aa_bb_cc
String input2 = "a abbcc";  //a_abbcc
String input3 = "aabb cc";  //aabb_cc

And after all if you are don' caring about the loose of information you can use any approach you want.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文