Thursday, April 14, 2011

split string logic in J2ME

I am developing a J2ME application.

I want to split the following string at "<br>" & comma:

3,toothpaste,2<br>4,toothbrush,3

How can I do this?

From stackoverflow
  •   private String[] split(String original,String separator) {
        Vector nodes = new Vector();
        // Parse nodes into vector
        int index = original.indexOf(separator);
        while(index >= 0) {
            nodes.addElement( original.substring(0, index) );
            original = original.substring(index+separator.length());
            index = original.indexOf(separator);
        }
        // Get the last node
        nodes.addElement( original );
    
         // Create split string array
        String[] result = new String[ nodes.size() ];
        if( nodes.size() > 0 ) {
            for(int loop = 0; loop < nodes.size(); loop++)
            {
                result[loop] = (String)nodes.elementAt(loop);
                System.out.println(result[loop]);
            }
    
        }
       return result;
    }
    

    The above method will let you split a string about the passed separator, much like J2EE's String.split(). So first split the string on the line break tag, and then do it at each offset of the returned array for the "," comma. e.g.

     String[] lines = this.split(myString,"<br>");
     for(int i = 0; i < lines.length; i++) 
     {
          String[] splitStr = this.split(lines[i],",");
          System.out.println(splitStr[0] + " " + splitStr[1] + " " + splitStr[2]);     
     }
    

0 comments:

Post a Comment

Note: Only a member of this blog may post a comment.