从EditText中转义字符串

时间:2010-11-11 17:36:35

标签: android http get escaping android-edittext

我只是想知道,如果我有一个EditText我将内容转换为字符串,请说

String queryStr = new String(searchText.getText().toString());

我如何从这个字符串中转义特殊字符,以便将其放入HttpGet方法?谢谢!

4 个答案:

答案 0 :(得分:8)

使用java.net.URLEncoder

java.net.URLEncoder.encode(queryStr, "UTF-8");

答案 1 :(得分:3)

尝试:

TextUtils.htmlEncode(queryStr);

我认为应该做你想做的事。

答案 2 :(得分:0)

尝试这样的smth:

import android.net.Uri;

...

private String getParams(String queryStr) {
    Uri.Builder builder = new Uri.Builder();
    builder.appendQueryParameter("your_parameter_key", queryStr);
    return builder.toString();
}

它会为您提供正确编码的参数字符串,以附加到您的基本网址。

答案 3 :(得分:0)

在旁注中,没有理由在这里使用新的String()。

String queryStr = new String(searchText.getText().toString());

应该只是

String queryStr = searchText.getText().toString();