在groovy中用%20替换空格

时间:2014-07-16 16:02:48

标签: grails groovy

我正在将一些变量推送到httpGet语句并且它在任何空格上失败,如何在运行GET之前用%20替换变量中的空格?


我正在尝试编码" felton,ca"它位于带from

的变量def fromFormatted = URLEncoder.encode(from, "UTF-8")

当我运行代码时出现错误

groovy.lang.MissingMethodException: No signature of method: static java.net.URLEncoder.encode() is applicable for argument types: (org.codehaus.groovy.grails.web.json.JSONArray, java.lang.String) values: [[felton, ca], UTF-8]

原始输入字段

section("Departing From:"){
    input "from", "text", title: "Address?"

还尝试def fromFormatted = from.encodeAsURL()

结果为

%5B%22felton%22%2C%22ca%22%5D


显然,由于输入文本包含,,因此它会自动将输入文本视为数组。是否有任何想法阻止这种情况发生,或将其转换为字符串并保留逗号?


我使用def fromStr = from.join(",")

解析了数组

不幸的是join创建了一个添加双引号的json字符串

%22felton%22%2C%22ca%22

是否有另一种加入数组的方法可以在不添加引号的情况下维护逗号?

0 个答案:

没有答案