当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java DataInputStream skipBytes()用法及代码示例


DataInputStream类skipBytes()方法

  • skipBytes() 方法可在java.io包。
  • skipBytes() 方法用于从该 DataInputStream 跳过给定字节数的数据。
  • skipBytes() 方法是一个非静态方法,它只能通过类对象访问,如果我们尝试使用类名访问方法,那么我们将得到一个错误。
  • skipBytes() 方法可能会在跳过数据字节时抛出异常。
    IOException: 获取任何输入/输出错误时可能会抛出此异常。

用法:

    public final int skipBytes(int number);

参数:

  • int number– 表示要跳过的字节数。

返回值:

该方法的返回类型是int,它返回要跳过的确切字节数。

例:

// Java program to demonstrate the example 
// of int skipBytes(int number) method of 
// DataInputStream

import java.io.*;

public class SkipBytesOfDIS {
 public static void main(String[] args) throws IOException {
  InputStream is_stm = null;
  DataInputStream dis_stm = null;
  FileOutputStream fos_stm = null;
  DataOutputStream dos_stm = null;
  byte[] b_arr = {
   12,
   20,
   45,
   98,
   75,
   69,
   30,
   58,
   47,
   61,
   83,
   55
  };

  try {
   // Instantiate FileInputStream, 
   // DataInputStream, FileOutputStream
   // and DataOutputStream 

   fos_stm = new FileOutputStream("C:\\Users\\Preeti Jain\\Desktop\\programs\\includehelp.txt");
   dos_stm = new DataOutputStream(fos_stm);

   // Loop to write each byte till end
   for (byte val:b_arr) {
    // By using write() method isto
    // write a byte value to the
    // DataOutputStream dos_stm
    dos_stm.write(val);
   }

   is_stm = new FileInputStream("C:\\Users\\Preeti Jain\\Desktop\\programs\\includehelp.txt");
   dis_stm = new DataInputStream(is_stm);


   // Loop To Read Available Data till end
   while (dis_stm.available() > 0) {
    // By using skipBytes() method is to
    // skip 2 bytes of data from the stream
    dis_stm.skipBytes(2);

    // By using read() method isto read 
    // byte from dis_stm

    int in = dis_stm.read();
    System.out.println("dis_stm.read():" + in );
   }
  } catch (Exception ex) {
   System.out.println(ex.toString());
  } finally {
   // To free system resources linked
   // with these streams
   if (is_stm != null)
    is_stm.close();

   if (dis_stm != null)
    dis_stm.close();

   if (dos_stm != null)
    dos_stm.close();

   if (fos_stm != null)
    fos_stm.close();
  }
 }
}

输出

dis_stm.read():45
dis_stm.read():69
dis_stm.read():47
dis_stm.read():55


相关用法


注:本文由纯净天空筛选整理自Preeti Jain大神的英文原创作品 Java DataInputStream skipBytes() Method with Example。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。