4

getメソッドを使用してmySqlデータベースからテキストを読み取ることになっているアプリケーションを作成しています。

データベースからデータ要素を文字列として取得すると、文字列を分割し、文字列を使用してリストを作成することになっていますが、split()メソッドはここでは機能しないようです。

J2MEによるとcannot find method split()-どうすればよいですか?

私のコードは以下の通りです:

/* assuming the string (String dataString) has already
been read from the database and equals one,two three
i.e String dataString = "one,two,three"; */

String dataArray[];
String delimiter = ",";
dataArray = dataString.split(delimiter);

//continue and create a list from the array.

デスクトップおよびコンソールアプリケーションでこれを試しましたが、完全に機能しているようですが、コードはj2meアプリケーションでは実行されません。私が使用することになっている方法はありますか?私に何ができる?

4

1 に答える 1

11

これが高速実装です。

 public static String[] Split(String splitStr, String delimiter) {
     StringBuffer token = new StringBuffer();
     Vector tokens = new Vector();
     // split
     char[] chars = splitStr.toCharArray();
     for (int i=0; i < chars.length; i++) {
         if (delimiter.indexOf(chars[i]) != -1) {
             // we bumbed into a delimiter
             if (token.length() > 0) {
                 tokens.addElement(token.toString());
                 token.setLength(0);
             }
         } else {
             token.append(chars[i]);
         }
     }
     // don't forget the "tail"...
     if (token.length() > 0) {
         tokens.addElement(token.toString());
     }
     // convert the vector into an array
     String[] splitArray = new String[tokens.size()];
     for (int i=0; i < splitArray.length; i++) {
         splitArray[i] = (String)tokens.elementAt(i);
     }
     return splitArray;
 }
于 2012-04-12T15:17:29.510 に答える