Java - StringReader skip(long ns) method



Description

The Java StringReader skip(long ns) method skips the specified number of characters in the stream. Returns the number of characters that were skipped.

Declaration

Following is the declaration for java.io.StringReader.skip(long ns) method.

public long skip(long ns)

Parameters

ns − The number of characters to skip.

Return Value

This method returns the number of characters actually skipped.

Exception

IOException − If an I/O error occurs.

Example - Usage of StringReader skip(long ns) method

The following example shows the usage of StringReader skip(long ns) method.

StringReaderDemo.java

package com.tutorialspoint;

import java.io.IOException;
import java.io.StringReader;

public class StringReaderDemo {
   public static void main(String[] args) {
      String s = "Hello World";

      // create a new StringReader
      StringReader sr = new StringReader(s);

      try {
         // read the first five chars
         for (int i = 0; i < 5; i++) {
            char c = (char) sr.read();

            // skip a char every time
            sr.skip(1);

            System.out.print("" + c);
         }

         // close the stream
         sr.close();

      } catch (IOException ex) {
         ex.printStackTrace();
      }
   }
}

Output

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

HloWr

Example - Skipping the first 5 characters

The following example shows the usage of StringReader skip(long ns) method.

StringReaderDemo.java

package com.tutorialspoint;

import java.io.StringReader;

public class StringReaderDemo {
   public static void main(String[] args) throws Exception {
      StringReader reader = new StringReader("Hello, Java World!");

      // Skip first 7 characters: "Hello, "
      long skipped = reader.skip(7);

      System.out.println("Characters skipped: " + skipped);

      int ch;
      while ((ch = reader.read()) != -1) {
         System.out.print((char) ch);
      }

      reader.close();
   }
}

Output

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

Characters skipped: 7
Java World!

Explanation

  • The first 7 characters "Hello, " are skipped.

  • Reading starts from "Java World!".

Example - Skipping more characters than available

The following example shows the usage of StringReader skip(long ns) method.

StringReaderDemo.java

package com.tutorialspoint;

import java.io.IOException;
import java.io.StringReader;

public class StringReaderDemo {
   public static void main(String[] args) throws IOException {
      StringReader reader = new StringReader("Short");

      long skipped = reader.skip(10); // Try to skip more than length

      System.out.println("Characters skipped: " + skipped);

      int ch = reader.read();
      if (ch == -1) {
         System.out.println("No characters left to read.");
      }
      reader.close();
   }
}

Output

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

Characters skipped: 5
No characters left to read.

Explanation

  • The string has only 5 characters.

  • skip(10) tries to skip 10, but only 5 can be skipped.

  • After that, the reader is at the end of the stream.

java_io_stringreader.htm