1

cannot find symbol文字列を文字列に置き換えるために以下のコードを使用しているときに、NetBeansでエラーが発生します。

public String urlEncode(String msg) {

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

助けが必要 !!

4

5 に答える 5

7

String を別の String に置き換えるための次のメソッドを作成しました。

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

Try an adapted version of URLEncoder for JavaMe published on code.google.com under the project JibLib mobile client.

于 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) が最善の策かもしれません。残念ながら、Xeon で提案されているように、URLEncoder.encode(String s, String enc) も JDK1.4 API 呼び出しです。

于 2012-05-16T21:16:40.290 に答える