1

cannot find symbol使用以下代码将字符串替换为字符串时,我在 netbeans 中遇到错误。

public String urlEncode(String msg) {

        if (msg != null) {
           msg=msg.replaceAll(" ","%20");
        }
        return msg;
    }

需要帮忙 !!

4

5 回答 5

7

我创建了以下方法来用另一个字符串替换字符串。

private String replace( String str, String pattern, String replace ) 
{
    int s = 0;
    int e = 0;
    StringBuffer result = new StringBuffer();

    while ( (e = str.indexOf( pattern, s ) ) >= 0 ) 
    {
        result.append(str.substring( s, e ) );
        result.append( replace );
        s = e+pattern.length();
    }
    result.append( str.substring( s ) );
    return result.toString();
}   
于 2012-05-17T02:23:15.547 回答
3

使用以下代码

private String replace(String needle, String replacement, String haystack) {
    String result = "";
    int index = haystack.indexOf(needle);
    if(index==0) {
        result = replacement+haystack.substring(needle.length());
        return replace(needle, replacement, result);
    }else if(index>0) {
        result = haystack.substring(0,index)+ replacement +haystack.substring(index+needle.length());
        return replace(needle, replacement, result);
    }else {
        return haystack;
    }
}
于 2012-05-16T21:14:49.543 回答
2

URLEncoder尝试发布在code.google.com上JibLib移动客户端项目下的适用于 JavaMe的改编版本。

于 2012-05-17T00:59:15.360 回答
0

您是否需要确定使用自己的方法来处理 URL 编码?只需使用 URLEncoder.encode(String s, String enc)

  @param   s  String to be translated.
  @param   enc   The name of a supported
  @return  the translated String.
于 2012-05-16T21:07:49.990 回答
0

replaceAll 是在 Java 1.4 中引入的,我认为 J2ME 仅限于 1.3。您必须使用更高版本的 JDK 进行编译,这就是您在运行时收到符号错误的原因。

URLEncoder.encode (String s) 可能是你最好的选择。不幸的是,至强建议的 URLEncoder.encode(String s, String enc) 也是 JDK1.4 API 调用。

于 2012-05-16T21:16:40.290 回答