Question

Imagine this array.

data[0] : 208.92.249.53:80
data[1] : 115.124.65.74:3128
data[2] : 49.213.17.92:8080

I want to split data[]. And extract ip and port number.

ip[0] : 208.92.249.53
ip[1] : 115.124.65.74
ip[2] : 49.213.17.92
port[0] : 80
port[1] : 3128
port[2] : 8080

How can I do that?

StringTokenizer stringTokenizer = new StringTokenizer(data[i], ":");
while (stringTokenizer.hasMoreTokens()){
        //??????
}

I don't know how can I save to 2 different array. please let me show how to do that... Thank you!

Was it helpful?

Solution 3

Try,

for(int i=0;i<data.length;i++){
StringTokenizer stringTokenizer = new StringTokenizer(data[i], ":");

  while (stringTokenizer.hasMoreTokens()) {
     ip[i]=stringTokenizer.nextToken();
     port[i]=stringTokenizer.nextToken();

  }
}

OTHER TIPS

String[] ip = new String[data.length];
String[] port = new String[data.length];

for (int i=0;i<data.length;i++) {
   String[] split = data[i].split(":");
   ip[i] = split[0];
   port[i] = split[1];
}

StringTokenizer ist deprecated use array.split() instead.

String[] tmp = data[i].split(":");
ip[i] = tmp[0];
port[i] = tmp[1];
String[] arrTokens =data[0].split(":");

Maybe StringTokenizer is not what you want. You can do this via split command

String[] ip = new String[data.length];
String[] port = new String[data.length];
for (int i = 0; i < data.length; i++)
{
   String[] splitted = data[i].split(":");
   ip[i] = splitted[0];
   port[i] = splitted[1];
}
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top