• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Liutauras Vilda
  • Bear Bibeault
  • Jeanne Boyarsky
  • Tim Cooke
Sheriffs:
  • Knute Snortum
  • Junilu Lacar
  • Devaka Cooray
Saloon Keepers:
  • Ganesh Patekar
  • Tim Moores
  • Carey Brown
  • Stephan van Hulst
  • salvin francis
Bartenders:
  • Ron McLeod
  • Frits Walraven
  • Pete Letkeman

please clarify this.  RSS feed

 
Greenhorn
Posts: 18
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
public class Testing {
public static void main( String args[] ) {
String s = "SA001^SFO^DEN^SpeedyAir^400^Sun^13:40^20m^50";
String[] s2 = new String[9];
int aIndex = s.indexOf('^');
int bIndex = 0;
int cIndex = -1;
for( int i = 0; i < 9; i++ )
{
if( bIndex == -1 )
{
s2[i] = s.substring( ++cIndex );
break;
}
s2[i] = s.substring( ++cIndex, aIndex );
cIndex = aIndex;
bIndex = s.indexOf('^', aIndex );
aIndex = bIndex;
}
System.out.println( s2 );
}
}

The main purpose of this class is to convert the String object to an array of Strings.
But the compiler complains of String index out of Bonds exception.
please clarify this for me.
poornima.
 
Ranch Hand
Posts: 51
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You many want to consider using a StringTokenizer.
 
Ranch Hand
Posts: 49
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Poornima,
Hope this helps !
StringTokenizer st = new StringTokenizer(s,"^\")
while (st.hasMoreTokens())
st.nextToken() ;
//store in the array
You can use int numberOfTokens = st.countTokens() to construct the array size
- Ravi.
 
Ravikiran Choppalli
Ranch Hand
Posts: 49
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Correction !
StringTokenizer st = new StringTokenizer(s,"^\"") ;
- Ravi.
 
Ranch Hand
Posts: 704
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
FWIW
I achieved this using
StringTokenizer stk = new StringTokenizer(string,"^");
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!