Рубрики

Java.io.StreamTokenizer класс в Java | Комплект 1

Класс Java.io.StreamTokenizer разбирает входной поток на «токены». Он позволяет читать по одному токену за раз. Stream Tokenizer может распознавать числа, строки в кавычках и различные стили комментариев.
Декларация:

public class StreamTokenizer
  extends Object

Конструктор:
StreamTokenizer (Reader arg): создает токенизатор, который анализирует данный поток символов.

Методы:

  • commentChar:
  • java.io.StreamTokenizer.commentChar (int arg) игнорирует все символы от однострочного символа комментария до конца строки этим StreamTokenizer.
    Синтаксис:

public void commentChar(int arg) 
Parameters : 
arg : the character after which all characters are ignored in the line.
Return :
No value is returned.

Реализация :

// Java-программа, иллюстрирующая использование метода commentChar ()

  

import java.io.*;

public class NewClass

{

    public static void main(String[] args) throws InterruptedException, 

                                              FileNotFoundException, IOException

    {

        FileReader reader = new FileReader("ABC.txt");

        BufferedReader bufferread = new BufferedReader(reader);

        StreamTokenizer token = new StreamTokenizer(bufferread);

        // Использование метода commentChar ()

        token.commentChar('a');

        int t;

        while ((t = token.nextToken()) != StreamTokenizer.TT_EOF)

        {

            switch (t)

            {

            case StreamTokenizer.TT_NUMBER:

                System.out.println("Number : " + token.nval);

                break;

            case StreamTokenizer.TT_WORD:

                System.out.println("Word : " + token.sval);

                break;

  

            }

        }

    }

}

Замечания :
Эта программа не будет работать здесь, так как не существует файла 'ABC'. Вы можете проверить этот код на компиляторе Java в вашей системе.
Чтобы проверить этот код, создайте файл «ABC» в вашей системе.
Файл 'ABC' содержит:

Программисты
1
2
3
Geeks
Здравствуйте
Программу здесь объясняют мои друзья.

Выход:

Word : Progr
Number : 1.0
Number : 2.0
Number : 3.0
Word : Geeks
Word : Hello

  • lineno (): java.io.StreamTokenizer.lineno () возвращает номер текущей строки этого StreamTokenizer.
    Синтаксис:
    public int lineno()
    Parameters : 
    arg : the character after which all characters are ignored in the line.
    Return :
    returns the current line number of this StreamTokenizer.

    Реализация :

    // Java-программа, иллюстрирующая использование метода lineno ()

      

    import java.io.*;

    public class NewClass

    {

      

        public static void main(String[] args) throws InterruptedException, 

                                                      FileNotFoundException, IOException

        {

            FileReader reader = new FileReader("ABC.txt");

            BufferedReader bufferread = new BufferedReader(reader);

            StreamTokenizer token = new StreamTokenizer(bufferread);

              

            token.eolIsSignificant(true);

            // Использование метода lineno ()

            // чтобы получить номер текущей строки

            System.out.println("Line Number:" + token.lineno());

      

            token.commentChar('a');

            int t;

            while ((t = token.nextToken()) != StreamTokenizer.TT_EOF)

            {

                switch (t)

                {

                case StreamTokenizer.TT_EOL:

                    System.out.println("");

                    System.out.println("Line No. : " + token.lineno());

                    break;

                case StreamTokenizer.TT_NUMBER:

                    System.out.println("Number : " + token.nval);

                    break;

                case StreamTokenizer.TT_WORD:

                    System.out.println("Word : " + token.sval);

                    break;

      

                }

            }

        }

    }

    Выход:

    Line Number:1
    Word : Progr
    
    Line No. : 2
    Number : 1.0
    
    Line No. : 3
    Number : 2.0
    
    Line No. : 4
    Number : 3.0
    
    Line No. : 5
    Word : Geeks
    
    Line No. : 6
    Word : Hello
    
    Line No. : 7
    Word : This
    Word : is
    

  • toString (): java.io.StreamTokenizer.toString () представляет текущий токен Stream в виде строки вместе с его строкой no.
    Синтаксис:
    public String toString()
    Return :
    represents current Stream token as a string along with it's line no.

    Реализация :

    // Java-программа, иллюстрирующая использование метода toString ()

       

    import java.io.*;

    public class NewClass

    {

        public static void main(String[] args) throws InterruptedException, 

                                                  FileNotFoundException, IOException

        {

            FileReader reader = new FileReader("ABC.txt");

            BufferedReader bufferread = new BufferedReader(reader);

            StreamTokenizer token = new StreamTokenizer(bufferread);

              

            int t;

            while ((t = token.nextToken()) != StreamTokenizer.TT_EOF)

            {

                switch (t)

                {

                case StreamTokenizer.TT_NUMBER:

                    // Значение поля ttype, возвращаемого nextToken ()

                    System.out.println("Number : " + token.nval);

                    break;

                    // Значение поля ttype, возвращаемого nextToken ()

                case StreamTokenizer.TT_WORD:

                      

                    // Использование метода toStringn ()

                    System.out.println("Word : " + token.toString());

                    break;

                 }

            }

        }

    }

    Выход:

    Word : Token[Programmers], line 1
    Number : 1.0
    Number : 2.0
    Number : 3.0
    Word : Token[Geeks], line 5
    Word : Token[Hello], line 6
    Word : Token[a], line 7
    Word : Token[Program], line 7
    Word : Token[is], line 7
    Word : Token[explained], line 7
    Word : Token[here], line 7
    Word : Token[my], line 7
    Word : Token[friends.], line 7
    

  • eolIsSignificant (): java.io.StreamTokenizer.eolIsSignificant (логический аргумент) указывает, следует ли обрабатывать конец строки как токен или нет. Если «arg» истинно, то конец строки считается токеном. Если true, то метод возвращает TT_EOL и устанавливает поле ttype при достижении конца строки.
    Если 'arg' ложно, то конец строки рассматривается просто как пробел.
    Синтаксис:
    public void eolIsSignificant(boolean arg)
    Parameters :
    arg : boolean which tells whether to take EOL as a token or white space
    Return :
    No value is returned.

    Реализация :

    // Java-программа, иллюстрирующая использование метода eolIsSignificant ()

      

    import java.io.*;

    public class NewClass

    {

        public static void main(String[] args) throws InterruptedException,

        FileNotFoundException, IOException

        {

            FileReader reader = new FileReader("ABC.txt");

            BufferedReader bufferread = new BufferedReader(reader);

            StreamTokenizer token = new StreamTokenizer(bufferread);

      

            boolean arg = true;

            // Использование метода eolIsSignificant ()

            token.eolIsSignificant(arg);

            // Здесь 'arg' установлен в true, поэтому EOL рассматривается как токен

      

            int t;

            while ((t = token.nextToken()) != StreamTokenizer.TT_EOF)

            {

                switch (t)

                {

                case StreamTokenizer.TT_EOL:

                    System.out.println("End of Line encountered.");

                    break;

                case StreamTokenizer.TT_NUMBER:

                    System.out.println("Number : " + token.nval);

                    break;

                case StreamTokenizer.TT_WORD:

                    System.out.println("Word : " + token.sval);

                    break;

      

                }

            }

        }

    }

    Замечания :
    Эта программа не будет работать здесь, так как не существует файла 'ABC'. Вы можете проверить этот код на компиляторе Java в вашей системе.
    Чтобы проверить этот код, создайте файл «ABC» в вашей системе.
    Файл 'ABC' содержит:

    1
    Geeks
    2
    За
    3
    Geeks

    Выход :

    Number : 1.0
    End of Line encountered.
    Word : Geeks
    End of Line encountered.
    Number : 2.0
    End of Line encountered.
    Word : For
    End of Line encountered.
    Number : 3.0
    End of Line encountered.
    Word : Geeks

  • nextToken (): java.io.StreamTokenizer.nextToken () анализирует следующий токен из входного потока и возвращает его значение в поле ttype вместе с дополнительными полями, такими как 'sval', 'nval'.
    Синтаксис:
    public int nextToken()
    Parameters :
    ------
    Return :
    value to the ttype field

    Реализация :

    // Java-программа, иллюстрирующая использование метода nextToken ()

      

    import java.io.*;

    public class NewClass

    {

        public static void main(String[] args) throws InterruptedException,

        FileNotFoundException, IOException

        {

            FileReader reader = new FileReader("ABC.txt");

            BufferedReader bufferread = new BufferedReader(reader);

            StreamTokenizer token = new StreamTokenizer(bufferread);

      

            // Использование метода nextToken () для анализа следующего токена из входного потока

            int t = token.nextToken();

            while ((t = token.nextToken()) != StreamTokenizer.TT_EOF)

            {

                switch (t)

                {

                case StreamTokenizer.TT_NUMBER:

                    System.out.println("Number : " + token.nval);

                    break;

                case StreamTokenizer.TT_WORD:

                    System.out.println("Word : " + token.sval);

                    break;

      

                }

            }

        }

    }

    Замечания :
    Эта программа не будет работать здесь, так как не существует файла 'ABC'. Вы можете проверить этот код на компиляторе Java в вашей системе.
    Чтобы проверить этот код, создайте файл «ABC» в вашей системе.
    Файл 'ABC' содержит:

    1
    Эта программа рассказывает
    2
    об использовании
    3
    следующий метод token ()

    Выход :

    Word : This
    Word : program
    Word : tells
    Number : 2.0
    Word : about
    Word : use
    Word : of
    Number : 3.0
    Word : next
    Word : token
    Word : method

  • lowerCaseMode (): java.io.StreamTokenizer.lowerCaseMode (логическое значение arg) указывает, следует ли автоматически вводить строчные буквы для токенов слова или нет. Если флаг — 'arg' установлен в true, то значение поля 'sval' уменьшается.
    Синтаксис:
    public void lowerCaseMode(boolean arg)
    Parameters :
    arg : indicates whether to lowercase the word tokens automatically or not
    Return :
    void

    Реализация :

    // Java-программа, иллюстрирующая использование метода lowerCaseMode ()

      

    import java.io.*;

    public class NewClass

    {

        public static void main(String[] args) throws InterruptedException,

        FileNotFoundException, IOException

        {

            FileReader reader = new FileReader("ABC.txt");

            BufferedReader bufferread = new BufferedReader(reader);

            StreamTokenizer token = new StreamTokenizer(bufferread);

      

            / * Использование метода lowerCaseMode () для

               Здесь мы включили режим нижнего регистра

            * /

            boolean arg = true;

            token.lowerCaseMode(arg);

      

            int t;

            while ((t = token.nextToken()) != StreamTokenizer.TT_EOF)

            {

                switch (t)

                {

                case StreamTokenizer.TT_NUMBER:

                    System.out.println("Number : " + token.nval);

                    break;

                case StreamTokenizer.TT_WORD:

                    System.out.println("Word : " + token.sval);

                    break;

      

                }

            }

        }

    }

    Замечания :
    Эта программа не будет работать здесь, так как не существует файла 'ABC'. Вы можете проверить этот код на компиляторе Java в вашей системе.
    Чтобы проверить этот код, создайте файл «ABC» в вашей системе.
    Файл 'ABC' содержит:

    Привет гики
    Речь идет о
    LowerCaseMode ()

    Выход :

    Word : hello
    Word : geeks
    Word : this
    Word : is
    Word : about
    Word : lowercasemode

  • commonChar (): java.io.StreamTokenizer.ndomChar (int arg) устанавливает символ 'arg' как обычный символ. Он удалит символ arg, если он имеет какое-либо значение в виде слова, числа, пробела или символа комментария.
    Синтаксис:
    public void ordinaryChar(int arg)
    Parameters :
    arg : the character which is to be set as an Ordinary Character
    Return :
    void

    Реализация :

    // Java-программа, иллюстрирующая использование метода normalChar ()

      

    import java.io.*;

    public class NewClass

    {

        public static void main(String[] args) throws InterruptedException,

        FileNotFoundException, IOException

        {

            FileReader reader = new FileReader("ABC.txt");

            BufferedReader bufferread = new BufferedReader(reader);

            StreamTokenizer token = new StreamTokenizer(bufferread);

      

            // Использование метода normalChar ()

            // Здесь мы взяли 's' как обычный символ

             token.ordinaryChar('s');

      

            int t;

            while ((t = token.nextToken()) != StreamTokenizer.TT_EOF)

            {

                switch (t)

                {

                case StreamTokenizer.TT_NUMBER:

                    System.out.println("Number : " + token.nval);

                    break;

                case StreamTokenizer.TT_WORD:

                    System.out.println("Word : " + token.sval);

                    break;

      

                }

            }

        }

    }

    Замечания :
    Эта программа не будет работать здесь, так как не существует файла 'ABC'. Вы можете проверить этот код на компиляторе Java в вашей системе.
    Чтобы проверить этот код, создайте файл «ABC» в вашей системе.
    Файл 'ABC' содержит:

    Привет гики
    Thissss Issszz О
    ordinaryChar ()

    Этот метод удаляет 's' из всего потока

    Выход :

    Word : Hello
    Word : Geek
    Word : Thi
    Word : I
    Word : zz
    Word : About
    Word : ordinaryChar

  • normalChars (): java.io.StreamTokenizer.ndomChars (int low, int high) устанавливает символ в диапазоне — от «a до b» обычному символу в StreamTokenizer
    Синтаксис:
    public void ordinaryChars(int low, int high)
    Parameters :
    low : lower limit of range
    high : higher limit of range
    Return :
    void

    Реализация :

    // Java-программа, иллюстрирующая использование метода normalChars ()

      

    import java.io.*;

    public class NewClass

    {

        public static void main(String[] args) throws InterruptedException,

        FileNotFoundException, IOException

        {

            FileReader reader = new FileReader("ABC.txt");

            BufferedReader bufferread = new BufferedReader(reader);

            StreamTokenizer token = new StreamTokenizer(bufferread);

      

            // Использование метода normalChars ()

            // Здесь мы взяли low = 'a' и high = 'c'

             token.ordinaryChars('a','c');

      

            int t;

            while ((t = token.nextToken()) != StreamTokenizer.TT_EOF)

            {

                switch (t)

                {

                case StreamTokenizer.TT_NUMBER:

                    System.out.println("Number : " + token.nval);

                    break;

                case StreamTokenizer.TT_WORD:

                    System.out.println("Word : " + token.sval);

                    break;

      

                }

            }

        }

    }

    Замечания :
    Эта программа не будет работать здесь, так как не существует файла 'ABC'. Вы можете проверить этот код на компиляторе Java в вашей системе.
    Чтобы проверить этот код, создайте файл «ABC» в вашей системе.
    Файл 'ABC' содержит:

    Привет гики
    Эта
    является
    около
    ordinaryChars ()

    Выход :

    Word : Hello
    Word : Geeks
    Word : This
    Word : is
    Word : out
    Word : ordin
    Word : ryCh
    Word : rs

    Следующая статьяКласс Java.io.StreamTokenizer в Java | Набор 2

    Эта статья предоставлена Мохит Гупта 🙂 . Если вы как GeeksforGeeks и хотели бы внести свой вклад, вы также можете написать статью с помощью contribute.geeksforgeeks.org или по почте статьи contribute@geeksforgeeks.org. Смотрите свою статью, появляющуюся на главной странице GeeksforGeeks, и помогите другим вундеркиндам.

    Пожалуйста, пишите комментарии, если вы обнаружите что-то неправильное или вы хотите поделиться дополнительной информацией по обсуждаемой выше теме.

    Рекомендуемые посты:

    Java.io.StreamTokenizer класс в Java | Комплект 1

    0.00 (0%) 0 votes