Java DataOutputStream writeBytes()方法与示例

DataOutputStream类writeBytes()方法

  • writeBytes()方法在java.io包中可用。

  • writeBytes()方法用于将给定的字符串作为字节序列写入基本输出流。

  • writeBytes()方法是一个非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。

  • writeBytes()方法在写入字符串时可能会引发异常。
    IOException:在获取任何输入/输出错误时,可能引发此异常。

语法:

    public final void writeBytes(String str);

参数:

  • 字符串str –表示要写入基本数据输出流的字符串。

返回值:

该方法的返回类型为void,不返回任何内容。

示例

//Java程序演示示例 
//void writeBytes(String str)方法 
//DataOutputStream的

import java.io.*;

public class WriteBytesOfDOS {
 public static void main(String[] args) throws Exception {
  ByteArrayOutputStream baos_stm = null;
  DataOutputStream dos_stm = null;

  String str = "Java World";

  try {
   //实例化ByteArrayOutputStream,DataOutputStream-
   baos_stm = new ByteArrayOutputStream();
   dos_stm = new DataOutputStream(baos_stm);

   //通过使用writeBytes()isto方法
   //给定str中的值(以字节为单位)
   //到dos_stm流
   dos_stm.writeBytes(str);

   //通过使用flush()方法isto-
   //刷新输出字节被写出
   //到基本输出流
   dos_stm.flush();

   //以字节显示str-
   System.out.println("dos_stm.writeBytes(str): " + str);

   System.out.println();

   //通过使用toByArray()方法isto-
   //将流baos_stm转换为字节 
   //数组
   byte[] by = baos_stm.toByteArray();

   //循环显示每个字节至
   //baos_stm数据直到结束

   for (byte val: by) {
    //相应的字节
    //给定字符,以字符串表示
    System.out.println("dos_stm.writeByte(): " + val);
   }
  } catch (Exception ex) {
   System.out.println(ex.toString());
  } finally {
   //这个块是释放所有必要的系统 
   //与流链接的资源
   if (baos_stm != null)
    baos_stm.close();

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

输出结果

dos_stm.writeBytes(str): Java World

dos_stm.writeByte(): 74
dos_stm.writeByte(): 97
dos_stm.writeByte(): 118
dos_stm.writeByte(): 97
dos_stm.writeByte(): 32
dos_stm.writeByte(): 87
dos_stm.writeByte(): 111
dos_stm.writeByte(): 114
dos_stm.writeByte(): 108
dos_stm.writeByte(): 100