📌  相关文章
📜  Java中的 DataInputStream readChar() 方法及示例

📅  最后修改于: 2022-05-13 01:54:27.222000             🧑  作者: Mango

Java中的 DataInputStream readChar() 方法及示例

Java中DataInputStream类的readChar()方法用于读取两个输入字节并返回一个char值。此方法基本上将字节读取为由 DataOutputStream 类的 writechar() 方法写入的字符。

句法:

public final char readChar()
          throws IOException

指定者:该方法由DataInput接口的readChar()方法指定。

参数:此方法不接受任何参数。

返回值:该方法返回输入流的两个字节解释的char值。

例外:

  • EOFException – 如果输入流在读取两个字节之前结束,则抛出EOFException
  • IOException – 如果流关闭或发生其他 I/O 错误,此方法将引发IOException

下面的程序说明了 IO 包中 DataInputStream 类中的 readChar() 方法:

程序1:假设文件“demo.txt”存在。

// Java program to illustrate
// DataInputStream readChar() method
import java.io.*;
public class GFG {
    public static void main(String[] args)
        throws IOException
    {
  
        // Create byte array
        byte[] buf = { 71, 69, 69, 75, 83 };
  
        // Create file output stream
        FileOutputStream outputStream
            = new FileOutputStream("c:\\demo.txt");
  
        // Create data output stream
        DataOutputStream dataOutputStr
            = new DataOutputStream(outputStream);
  
        for (byte b : buf) {
            // Write character to
            // the dataOutputStream
            dataOutputStr.writeChar(b);
        }
  
        dataOutputStr.flush();
  
        // Create file input stream
        FileInputStream inputStream
            = new FileInputStream("c:\\demo.txt");
  
        // Create data input stream
        DataInputStream dataInputStr
            = new DataInputStream(inputStream);
  
        while (dataInputStr.available() > 0) {
            // Print character
            System.out.print(
                dataInputStr.readChar());
        }
    }
}
输出:

程序2:假设文件“demo.txt”存在。

// Java program to illustrate
// DataInputStream readChar() method
import java.io.*;
public class GFG {
    public static void main(String[] args)
        throws IOException
    {
  
        // Create byte array
        byte[] buf = { 71, 69, 69, 75, 83,
                       70, 79, 82, 71, 69,
                       69, 75, 83 };
        // Create file output stream
        FileOutputStream outputStream
            = new FileOutputStream("c:\\demo.txt");
  
        // Create data output stream
        DataOutputStream dataOutputStr
            = new DataOutputStream(outputStream);
  
        for (byte b : buf) {
            // Write character to
            // the dataOutputStream
            dataOutputStr.writeChar(b);
        }
  
        dataOutputStr.flush();
  
        // Create file input stream
        FileInputStream inputStream
            = new FileInputStream("c:\\demo.txt");
  
        // Create data input stream
        DataInputStream dataInputStr
            = new DataInputStream(inputStream);
  
        while (dataInputStr.available() > 0) {
            // Print character
            System.out.print(
                dataInputStr.readChar());
        }
    }
}
输出:

参考:
https://docs.oracle.com/javase/10/docs/api/java Java()