Java Scanner reset() Method



Description

The Java Scanner reset() method resets this scanner. Resetting a scanner discards all of its explicit state information which may have been changed by invocations of useDelimiter(java.util.regex.Pattern), useLocale(java.util.Locale), or useRadix(int).

Declaration

Following is the declaration for java.util.Scanner.reset() method

public Scanner reset()

Parameters

NA

Return Value

This method returns this scanner

Exception

NA

Reseting a Scanner on a String Example

The following example shows the usage of Java Scanner reset() method to reset the scanner. We've created a scanner object using a given string. Then we printed the string using nextLine() method and its locale is updated using useLocale() method. Radix is updated using useRadix() method. Scanner is then reset then using reset() method and values are printed to check the impact of reset() method. Then scanner is closed using close() method.

package com.tutorialspoint;

import java.util.Scanner;
import java.util.Locale;

public class ScannerDemo {
   public static void main(String[] args) {

      String s = "Hello World! 3 + 3.0 = 6.0 true ";

      // create a new scanner with the specified String Object
      Scanner scanner = new Scanner(s);

      // print a line of the scanner
      System.out.println("" + scanner.nextLine());

      // change the locale of this scanner
      scanner.useLocale(Locale.US);

      // change the radix of this scanner
      scanner.useRadix(30);

      // reset and check the values for radix and locale, which are the default
      scanner.reset();
      System.out.println(scanner.radix());
      System.out.println(scanner.locale());

      // close the scanner
      scanner.close();
   }
}

Output

Let us compile and run the above program, this will produce the following result −

Hello World! 3 + 3.0 = 6.0 true 
10
en_IN

Reseting a Scanner on a User Input Example

The following example shows the usage of Java Scanner reset() method to reset the scanner. We've created a scanner object using System.in. Then we printed the string using nextLine() method and its locale is updated using useLocale() method. Radix is updated using useRadix() method. Scanner is then reset then using reset() method and values are printed to check the impact of reset() method. Then scanner is closed using close() method.

package com.tutorialspoint;

import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;

public class ScannerDemo {
   public static void main(String[] args) throws FileNotFoundException {

      // create a new scanner with the System Input
      Scanner scanner = new Scanner(System.in);

      // print a line of the scanner
      System.out.println("" + scanner.nextLine());

      // change the locale of this scanner
      scanner.useLocale(Locale.US);

      // change the radix of this scanner
      scanner.useRadix(30);

      // reset and check the values for radix and locale, which are the default
      scanner.reset();
      System.out.println(scanner.radix());
      System.out.println(scanner.locale());

      // close the scanner
      scanner.close();
   }
}

Output

Let us compile and run the above program, this will produce the following result − (We've entered Hello World.)

Hello World
Hello World
10
en_IN

Reseting a Scanner on a Properties File Example

The following example shows the usage of Java Scanner reset() method to reset the scanner. We've created a scanner object using properties.txt file. Then we printed the string using nextLine() method and its locale is updated using useLocale() method. Radix is updated using useRadix() method. Scanner is then reset then using reset() method and values are printed to check the impact of reset() method. Then scanner is closed using close() method.

package com.tutorialspoint;

import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;

public class ScannerDemo {
   public static void main(String[] args) throws FileNotFoundException {

      // create a new scanner with a file as input
      Scanner scanner = new Scanner(new File("properties.txt"));

      // print a line of the scanner
      System.out.println("" + scanner.nextLine());

      // change the locale of this scanner
      scanner.useLocale(Locale.US);

      // change the radix of this scanner
      scanner.useRadix(30);

      // reset and check the values for radix and locale, which are the default
      scanner.reset();
      System.out.println(scanner.radix());
      System.out.println(scanner.locale());

      // close the scanner
      scanner.close();
   }
}

Assuming we have a file properties.txt available in your CLASSPATH, with the following content. This file will be used as an input for our example program −

Hello World! 3 + 3.0 = 6

Output

Let us compile and run the above program, this will produce the following result −.

Hello World! 3 + 3.0 = 6
10
en_IN
java_util_scanner.htm
Advertisements