Java Java.io.CharArrayReader.markSupported() 方法

  • 描述

    java.io.CharArrayReader.markSupported()方法测试流是否支持mark()。字符数组读取器支持mark()方法。
  • 声明

    以下是java.io.CharArrayReader.markSupported()方法的声明-
     public boolean markSupported()
  • 参数

    不适用
  • 返回值

    如果流支持mark()调用,则该方法返回true。
  • 异常

    不适用
  • 例子

    以下示例显示java.io.CharArrayReader.markSupported()方法的用法。
     
    package com.jc2182;
    import java.io.CharArrayReader;
    import java.io.IOException;
    
    public class CharArrayReaderDemo {
       public static void main(String[] args) {      CharArrayReader car = null;
          char[] ch = {'A', 'B', 'C', 'D', 'E'};
    
          try {
             // create new character array reader
             car = new CharArrayReader(ch);
             
             // verifies if the stream support mark() method
             boolean bool = car.markSupported();
             System.out.println("Is mark supported : "+bool);
             System.out.println("Proof:");
             
             // read and print the characters from the stream
             System.out.println(car.read());
             System.out.println(car.read());
             
             // mark() is invoked at this position
             car.mark(0);
             System.out.println("Mark() is invoked");
             System.out.println(car.read());
             System.out.println(car.read());
             
             // reset() is invoked at this position
             car.reset();
             System.out.println("Reset() is invoked");
             System.out.println(car.read());
             System.out.println(car.read());
             System.out.println(car.read());
             
          } catch(IOException e) {
             // if I/O error occurs
             e.printStackTrace();
          } finally {
             // releases any system resources associated with the stream
             if(car!=null)
                car.close();
          }
       }
    }
    
    让我们编译并运行以上程序,这将产生以下结果-
     
    Is mark supported : true
    Proof:
    65
    66
    Mark() is invoked
    67
    68
    Reset() is invoked
    67
    68
    69