StringTokenizer()

StringTokenizer() bir metni belli kriter veya kriterlere göre parçalamaya yarayan bir sınıftır.Java.util paketinden import edilir.Bu parçalama sonucu oluşan her bir parçaya token ismi verilmektedir.Metni parçalamak için herhangi bir kriter konulmazsa default olarak boşluk koşul olarak seçilir.

StringTokenizer() sınıfının hasMoreTokens() metodu sırada bir token olup olmadığını check edip boolean(True or false) değer döndüren bir metottur.nextToken() sıradaki token’i döndürür.countTokens() O anda kalan tokenların sayısını döndürür.

[php]

import java.io.*;
import java.util.*; //StringTokenizer() sınıfını kullanmamız icin
public class filestoken {
public static void main(String[] args){
try {
FileInputStream fs=new FileInputStream("D:training.txt");
BufferedReader buf=new BufferedReader(new InputStreamReader(fs));
String line;
StringTokenizer st;
while((line=buf.readLine())!=null){
st=new StringTokenizer(line);
while(st.hasMoreTokens()){
System.out.println(st.nextToken());
}
}
}
catch (FileNotFoundException f) {
f.printStackTrace();
}
catch(IOException e){
e.printStackTrace();
}
}
}

[/php]

Kodun çıktısı ise şu şekilde olacaktır.

[php]

The
weather
is
awesome.Unfortunately
i
gotto
work
.

[/php]

Koşulları belirtmek istersek StringTokenizerdan nesne üretirken aşağıdaki gibi bi işlem yapmalıyız.

[php]StringTokenizer st=new StringTokenizer("The weather is awesome.Unfortunately i gotta work.",",!");[/php]

StringTokenizer() ile StringBuffer() beraber kullanırsak ;

[php]
import java.io.*;
import java.util.*;
public class filestoken {
public static void main(String[] args){

String a="Java Programlama";
StringTokenizer st=new StringTokenizer(a);
while (st.hasMoreTokens()){
System.out.println(st.nextToken()); }
StringBuffer text = new StringBuffer("anita ");
text.append(a);
System.out.println(text);
}
}

[/php]

Cıktısı da

[php]

Java
Programlama
anita Java Programlama[/php]

şeklinde olacaktır.

Leave a Reply