Module  java.base
软件包  java.io

Class FileDescriptor



  • public final class FileDescriptor
    extends Object
    文件描述符类的实例用作表示打开文件,开放套接字或其他字节源或信宿的底层机器特定结构的不透明句柄。 文件描述符的主要实际用途是创建一个FileInputStreamFileOutputStream来包含它。

    应用程序不应创建自己的文件描述符。

    从以下版本开始:
    1.0
    另请参见:
    FileInputStreamFileOutputStream
    • 字段详细信息

      • in

        public static final FileDescriptor in
        标准输入流的句柄。 通常,该文件描述符不直接使用,而是通过称为System.in的输入流。
        另请参见:
        System.in
      • out

        public static final FileDescriptor out
        标准输出流的句柄。 通常,该文件描述符不直接使用,而是通过称为System.out的输出流。
        另请参见:
        System.out
      • err

        public static final FileDescriptor err
        标准错误流的句柄。 通常,该文件描述符不直接使用,而是通过称为System.err的输出流。
        另请参见:
        System.err
    • 构造方法详细信息

      • FileDescriptor

        public FileDescriptor​()
        构造(无效)FileDescriptor对象。
    • 方法详细信息

      • valid

        public boolean valid​()
        测试此文件描述符对象是否有效。
        结果
        true如果文件描述符对象表示有效的打开文件,套接字或其他活动I / O连接; 否则为false
      • sync

        public void sync​()
                  throws SyncFailedException
        强制所有系统缓冲区与底层设备同步。 该方法在将此FileDescriptor的所有修改数据和属性都写入相关设备后返回。 特别地,如果该FileDescriptor引用诸如文件系统中的文件的物理存储介质,同步将不会返回,直到与该FileDescriptor相关联的缓冲区的所有内存内修改的副本已被写入物理介质。 同步意图由需要物理存储(如文件)的代码用于已知状态例如,提供简单事务处理的类可能会使用sync来确保由给定的文件引起的对文件的所有更改交易记录在存储介质上。 sync只影响此FileDescriptor下游的缓冲区。 如果应用程序正在执行任何内存缓冲(例如,通过BufferedOutputStream对象),那么这些缓冲区必须在数据受同步影响之前刷新到FileDescriptor中(例如调用OutputStream.flush)。
        异常
        SyncFailedException - 当缓冲区无法刷新时抛出,或者系统无法保证所有缓冲区都已与物理介质同步。
        从以下版本开始:
        1.1