Clase Java.io.StreamTokenizer en Java | conjunto 2

Clase StringTokenizer en Java | Serie 1

StreamTokenizer Class - Set 2

Métodos:

  1. parseNumbers() : java.io.StreamTokenizer.parseNumbers() especifica que el número en StreamTokenizer se analiza, de modo que cada carácter: «0, 1, 2, 3, 4, 5, 6, 7, 8, 9» tiene un atributo numérico.
    Cuando el analizador encuentra un token de palabra que tiene el formato de un número de coma flotante de precisión doble, trata el token como un número en lugar de una palabra, estableciendo el campo ttype en el valor TT_NUMBER y colocando el valor numérico del token en el campo nval.
    Sintaxis:
    public void parseNumbers()
    Parameters :
    -----------
    Return :
    void

    Implementación:

    // Java Program  illustrating use of parseNumbers() method
      
    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);
      
            // Use of parseNumbers() method
            // specifies that the number in StreamTokenizer is parsed
             token.parseNumbers();
      
            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;
      
                }
            }
        }
    }

    Nota:
    este programa no se ejecutará aquí ya que no existe un archivo ‘ABC’. Puede verificar este código en el compilador de Java en su sistema.
    Para verificar este código, cree un archivo ‘ABC’ en su sistema.
    El archivo ‘ABC’ contiene:

    Hola Geeks 1
    Este 2 3 es sobre 4
    parseNumbers ()

    Producción :

    Word : Hello
    Word : Geeks
    Number : 1.0
    Word : This
    Number : 2.0
    Number : 3.0
    Word : is
    Word : about
    Number : 4.0
    Word : parseNumbers
  2. quoteChar() : java.io.StreamTokenizer.quoteChar(int arg) especifica que delimita el carácter coincidente como una constante de string en StreamTokenizer.
    Cuando el método nextToken encuentra una constante de string, el campo ttype se establece en el delimitador de string y el campo sval se establece en el cuerpo de la string.
    Sintaxis:
    public void quoteChar(int arg)
    Parameters :
    arg : the character to be dilimit 
    Return :
    void

    Implementación:

    // Java Program  illustrating use of quoteChar() method
      
    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);
      
            // specify o as a quote char
            token.quoteChar('o');
      
            int t;
            while ((t = token.nextToken()) != StreamTokenizer.TT_EOF)
            {
                switch (t)
                {
                case StreamTokenizer.TT_WORD:
                    System.out.println("Word : " + token.sval);
                    break;
                case StreamTokenizer.TT_NUMBER:
                    System.out.println("Number : " + token.nval);
                    break;
                default:
                    System.out.println((char) t + " encountered.");
      
                }
            }
        }
    }

    Nota:
    este programa no se ejecutará aquí ya que no existe un archivo ‘ABC’. Puede verificar este código en el compilador de Java en su sistema.
    Para verificar este código, cree un archivo ‘ABC’ en su sistema.
    El archivo ‘ABC’ contiene:

    Hola
    Geeks
    Esto
    es
    sobre
    quoteChar()

    Producción :

    Word : Hell
    o encountered.
    Word : Geeks
    Word : This
    Word : is
    Word : ab
    o encountered.
    Word : qu
    o encountered.
  3. resetSyntax() : java.io.StreamTokenizer.resetSynatx() restablece la sintaxis cuando se cumple un número, de modo que todos los caracteres se establecen como «ordinarios» en StreamTokenizer.
    Sintaxis:
    public void resetSyntax()
    Parameters :
    ---------
    Return :
    void

    Implementación:

    // Java Program  illustrating use of resetSyntax() method
      
    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_WORD:
                    System.out.println("Word : " + token.sval);
                    break;
                case StreamTokenizer.TT_NUMBER:
                      
                     // Use of resetSyntax() 
                     token.resetSyntax();
      
                    System.out.println("Number : " + token.nval);
                    break;
                default:
                    System.out.println((char) t + " encountered.");
      
                }
            }
        }
    }

    Nota:
    este programa no se ejecutará aquí ya que no existe un archivo ‘ABC’. Puede verificar este código en el compilador de Java en su sistema.
    Para verificar este código, cree un archivo ‘ABC’ en su sistema.
    El archivo ‘ABC’ contiene:

    Hola
    Esto
    es
    resetSyntax()
    1 xmpl
    2 🙂
    3
    Salida:

    Word : Hello
    Word : This
    Word : is
    Word : resetSyntax
    ( encountered.
    ) encountered.
    Number : 1.0
      encountered.
    x encountered.
    m encountered.
    p encountered.
    l encountered.
     encountered.
    
     encountered.
    2 encountered.
      encountered.
    : encountered.
    ) encountered.
     encountered.
    
     encountered.
    3 encountered.
  4. slashSlashComments() : java.io.StreamTokenizer.slashSlashComments(boolean arg) especifica si considerar o no los comentarios de estilo C++ por tokenizador. Si ‘arg’ se establece como verdadero, entonces StreamTokenizer reconoce e ignora los comentarios de estilo C++. ‘//’ se considera como el comienzo de un comentario.
    Si el argumento de la bandera es falso, los comentarios de estilo C++ no se tratan de forma especial.
    Sintaxis:
    public void slashSlashComments(boolean arg)
    Parameters :
    arg : tells whether to recognise and ignore C++ - style comments or not.
    Return :
    void

    Implementación:

    // Java Program  illustrating use of slashSlashComments() method
      
    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);
      
            // Use of slashSlashComments()
            // Here 'arg' is set to true i.e. to recognise and ignore C++style Comments
            boolean arg = true;
            token.slashSlashComments(arg);
      
            int t;
            while ((t = token.nextToken()) != StreamTokenizer.TT_EOF)
            {
                switch (t)
                {
                case StreamTokenizer.TT_WORD:
                    System.out.println("Word : " + token.sval);
                    break;
                case StreamTokenizer.TT_NUMBER:
                    System.out.println("Number : " + token.nval);
                    break;
                }
            }
        }
    }

    Nota:
    este programa no se ejecutará aquí ya que no existe un archivo ‘ABC’. Puede verificar este código en el compilador de Java en su sistema.
    Para verificar este código, cree un archivo ‘ABC’ en su sistema.
    El archivo ‘ABC’ contiene:

    Este programa es sobre el método slashSlashComments //

    Este método considera el ‘método’ en el archivo ABC.txt como un comentario y, por lo tanto, lo ignora.
    Producción :

    Word : This
    Word : program
    Word : is
    Word : about
    Word : slashSlashComments
  5. slashStarComments() : java.io.StreamTokenizer.slashStarComments(boolean arg) especifica si considerar o no los comentarios de estilo C por tokenizador. Si ‘arg’ se establece como verdadero, entonces StreamTokenizer reconoce e ignora los comentarios de estilo C. ‘/*……*/’ se considera un comentario.
    Sintaxis:
    public void slashStarComments(boolean arg)
    Parameters :
    arg : tells whether to recognise and ignore C - style comments or not.
    Return :
    void

    Implementación:

    // Java Program illustrating use of slashStarComments() method
      
    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);
      
            // Use of slashStarComments()
            // Here 'arg' is set to true i.e. to recognise and ignore Cstyle Comments
            boolean arg = true;
            token.slashStarComments(true);
      
            int t;
            while ((t = token.nextToken()) != StreamTokenizer.TT_EOF)
            {
                switch (t)
                {
                case StreamTokenizer.TT_WORD:
                    System.out.println("Word : " + token.sval);
                    break;
                case StreamTokenizer.TT_NUMBER:
                    System.out.println("Number : " + token.nval);
                    break;
                }
            }
        }
    }

    Nota:
    este programa no se ejecutará aquí ya que no existe un archivo ‘ABC’. Puede verificar este código en el compilador de Java en su sistema.
    Para verificar este código, cree un archivo ‘ABC’ en su sistema.
    El archivo ‘ABC’ contiene:

    Este programa es sobre slashStarComments /* método */ 123

    Este método considera el ‘método’ en el archivo ABC.txt como un comentario y, por lo tanto, lo ignora.
    Producción :

    Word : This
    Word : program
    Word : is
    Word : about
    Word : slashStarComments
    Number : 123.0
  6. whitespaceChars() : java.io.StreamTokenizer.whitespaceChars(int low, int high) especifica todos los caracteres en el rango de menor a mayor como espacio en blanco, que sirve solo para separar tokens en InputStream.
    Sintaxis:
    public void whitespaceChars(int low, int high)
    Parameters :
    low : lower range of character to be white spaced.
    high : higher range of character to be white spaced 
    Return :
    void

    Implementación:

    // Java Program illustrating use of whitespaceChars() method
      
    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);
               
            // Use of whitespaceChars() method
            // Here range is low = 'a' to high = 'c'
            token.whitespaceChars('a','d');
      
            int t;
            while ((t = token.nextToken()) != StreamTokenizer.TT_EOF)
            {
                switch (t)
                {
                case StreamTokenizer.TT_WORD:
                    System.out.println("Word : " + token.sval);
                    break;
                case StreamTokenizer.TT_NUMBER:
                    System.out.println("Number : " + token.nval);
                    break;
                }
            }
        }
    }

    Nota:
    este programa no se ejecutará aquí ya que no existe un archivo ‘ABC’. Puede verificar este código en el compilador de Java en su sistema.
    Para verificar este código, cree un archivo ‘ABC’ en su sistema.
    El archivo ‘ABC’ contiene:

    Este programa es sobre whitespaceChars()

    Producción :

    Word : This
    Word : progr
    Word : m
    Word : is
    Word : out
    Word : whitesp
    Word : eCh
    Word : rs

    Este artículo es aportado por Mohit Gupta 🙂 . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

    Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *