Java - 用String的+符号替换String中的所有空格

时间:2016-06-30 21:50:17

标签: java android json string

所以我在StackOverflow上寻找这个问题的答案但找不到答案。

我有一个URL,其左右部分始终相同,但中间部分不断变化。如果只有一个单词它可以正常工作,但如果有多个URL代替。

我需要用加号(+)替换所有空格。

我正在使用此代码而没有运气:

String content = bioObj.getString("summary");
                    content = content.replaceAll(" ", "%20");
                    bio.setText(content);

有人可以帮忙吗?

完整代码:

String finalUrlBio = bioUrlLeft+title+bioUrlRight;

        JsonObjectRequest bioRequest = new JsonObjectRequest(Request.Method.GET, finalUrlBio, (JSONObject) null, new Response.Listener<JSONObject>() {
            @Override
            public void onResponse(JSONObject response) {
                try {
                    JSONObject artistObj = response.getJSONObject("artist");
                    JSONObject bioObj = artistObj.getJSONObject("bio");
                    String content = bioObj.getString("summary");
                    content = content.replaceAll("\\s","+");
                    bio.setText(content);


                } catch (JSONException e) {
                    e.printStackTrace();
                }
            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {

            }
        });

        AppController.getInstance().addToRequestQueue(bioRequest);

ERROR:

07-01 00:00:37.379 2793-2872/com.darioradecic.topmusicandartists E/Volley: [397649] BasicNetwork.performRequest: Unexpected response code 400 for http://ws.audioscrobbler.com/2.0/?method=artist.getinfo&artist=Red Hot Chili Peppers&api_key=99b9ea4e41463638c76b4759d8b1da1d&format=json

2 个答案:

答案 0 :(得分:0)

我相信这个问题的答案可以解决你的问题。

Removing whitespace from strings in Java

您只需要从st.replaceAll("\\s","")更改为st.replaceAll("\\s","+"),因为您需要使用加号替换所有空格。

答案 1 :(得分:0)

我只想使用replace方法。 使用您的内容&#39;字符串:

content.replace(' ', '+');

这将检查空格并用加号替换空格。如果由于开头和结尾使用整个字符串时这是一个问题,我只需将中间字符串子串,然后使用replace方法。尝试https://docs.oracle.com/javase/7/docs/api/java/lang/String.html以获取对java中字符串及其预定义引用的所有引用。