Java.io.PushbackInputStream.mark() 方法

  • 描述

    Java.io.PushbackInputStream.mark() 方法标记在该输入流中的当前位置,但对于它PushbackInputStream什么也不做。
  • 声明

    以下是protected void mark()方法的声明。
     public void mark(int readlimit)
  • 参数

    readlimit-在标记位置变为无效之前可以读取的最大字节数限制。
  • 返回值

    此方法不返回值。
  • 异常

    N/A
  • 例子

    以下示例显示java.io.PushbackInputStream.mark()方法的用法。
     
    package com.jc2182;
    
    import java.io.*;
    
    public class PushbackInputStreamDemo {
       public static void main(String[] args) {
          
          // declare a buffer and initialize its size:
          byte[] arrByte = new byte[1024];
    
          // create an array for our message
          byte[] byteArray = new byte[]{'H', 'e', 'l', 'l', 'o'};
    
          // create object of PushbackInputStream class for specified stream
          InputStream is = new ByteArrayInputStream(byteArray);
          PushbackInputStream pis = new PushbackInputStream(is);
    
          try {
             // read from the buffer one character at a time
             for (int i = 0; i < byteArray.length; i++) {
    
                // read a char into our array
                arrByte[i] = (byte) pis.read();
    
                // display the read byte
                System.out.print((char) arrByte[i]);
             }
    
             // mark this position, but it does nothing for this class
             pis.mark(5);
          } catch (Exception ex) {
             ex.printStackTrace();
          }
       }
    }
    
    让我们编译并运行以上程序,这将产生以下结果-
     
    Hello