FileInputStream

public class FileInputStream extends InputStream 
    implements Closeable, AutoCloseable 

用于从文件系统中的文件获取输入字节。 可用的文件取决于主机环境

 

构造方法

构造器描述
FileInputStream​(File file)
通过打开与实际文件的连接来创建 FileInputStream ,该文件由文件系统中的 File对象 file命名。
FileInputStream​(FileDescriptor fdObj)
使用文件描述符 fdObj创建 FileInputStream ,该文件描述符表示与文件系统中实际文件的现有连接。
FileInputStream​(String name)
通过打开与实际文件的连接来创建 FileInputStream ,该文件由文件系统中的路径名 name命名。 

 

FileOutputStream

public class FileOutputStream extends OutputStream
    implements Closeable, Flushable, AutoCloseable 

用于将数据写入文件。 文件是否可用或是否可以创建取决于底层平台。 特别是某些平台允许一次仅打开一个文件以供写入FileOutputStream (或其他文件写入对象)。 在这种情况下,如果涉及的文件已经打开,则此类中的构造函数将失败。

 

构造方法

构造器描述
FileOutputStream​(File file)
创建文件输出流以写入由指定的 File对象表示的文件。
FileOutputStream​(FileDescriptor fdObj)
创建要写入指定文件描述符的文件输出流,该文件描述符表示与文件系统中实际文件的现有连接。
FileOutputStream​(File file, boolean append)
创建文件输出流以写入由指定的 File对象表示的文件。
FileOutputStream​(String name)
创建文件输出流以写入具有指定名称的文件。
FileOutputStream​(String name, boolean append)
创建文件输出流以写入具有指定名称的文件。 

 

示例

try (FileOutputStream fileOutput = new FileOutputStream("io.txt");
             FileInputStream fileInput = new FileInputStream("io.txt")){
    byte[] bytes = {65, 66, 67, 68, 69};
    fileOutput.write(bytes);
    while (true) {
        byte b = (byte) fileInput.read();
        if (b == -1) break;
        System.out.println(b);
     }
} catch (IOException e) {
    e.printStackTrace();
}

 

 

File

public class File
extends Object
implements Serializable, Comparable<File>

操作文件的类

 

字段

 

变量和类型字段描述
static String pathSeparator
与系统相关的路径分隔符,为方便起见,表示为字符串。
static char pathSeparatorChar
与系统相关的路径分隔符。
static String separator
系统相关的默认名称分隔符,为方便起见,表示为字符串。
static char separatorChar
系统相关的默认名称分隔符。 

 

构造方法

构造器描述
File​(File parent, String child)
从父抽象路径名和子路径名字符串创建新的 File实例。
File​(String pathname)
通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。
File​(String parent, String child)
从父路径名字符串和子路径名字符串创建新的 File实例。
File​(URI uri)
通过将给定的 file: URI转换为抽象路径名来创建新的 File实例。  

 

常用方法

变量和类型方法描述
boolean canExecute()
测试应用程序是否可以执行此抽象路径名表示的文件。
boolean canRead()
测试应用程序是否可以读取此抽象路径名表示的文件。
boolean canWrite()
测试应用程序是否可以修改此抽象路径名表示的文件。
int compareTo​(File pathname)
按字典顺序比较两个抽象路径名。
boolean createNewFile()
当且仅当具有此名称的文件尚不存在时,以原子方式创建由此抽象路径名命名的新空文件。
static File createTempFile​(String prefix, String suffix)
在默认临时文件目录中创建一个空文件,使用给定的前缀和后缀生成其名称。
static File createTempFile​(String prefix, String suffix, File directory)
在指定目录中创建一个新的空文件,使用给定的前缀和后缀字符串生成其名称。
boolean delete()
删除此抽象路径名表示的文件或目录。
void deleteOnExit()
请求在虚拟机终止时删除此抽象路径名表示的文件或目录。
boolean equals​(Object obj)
测试此抽象路径名与给定对象的相等性。
boolean exists()
测试此抽象路径名表示的文件或目录是否存在。
File getAbsoluteFile()
返回此抽象路径名的绝对形式。
String getAbsolutePath()
返回此抽象路径名的绝对路径名字符串。
File getCanonicalFile()
返回此抽象路径名的规范形式。
String getCanonicalPath()
返回此抽象路径名的规范路径名字符串。
long getFreeSpace()
通过此抽象路径名返回分区 named中未分配的字节数。
String getName()
返回此抽象路径名表示的文件或目录的名称。
String getParent()
返回此抽象路径名父项的路径名字符串,如果此路径名未指定父目录,则返回 null 。
File getParentFile()
返回此抽象路径名父项的抽象路径名,如果此路径名未指定父目录,则返回 null 。
String getPath()
将此抽象路径名转换为路径名字符串。
long getTotalSpace()
通过此抽象路径名返回分区 named的大小。
long getUsableSpace()
通过此抽象路径名返回分区 named上此虚拟机可用的字节数。
int hashCode()
计算此抽象路径名的哈希码。
boolean isAbsolute()
测试此抽象路径名是否为绝对路径。
boolean isDirectory()
测试此抽象路径名表示的文件是否为目录。
boolean isFile()
测试此抽象路径名表示的文件是否为普通文件。
boolean isHidden()
测试此抽象路径名指定的文件是否为隐藏文件。
long lastModified()
返回上次修改此抽象路径名表示的文件的时间。
long length()
返回此抽象路径名表示的文件的长度。
String[] list()
返回一个字符串数组,用于命名此抽象路径名表示的目录中的文件和目录。
String[] list​(FilenameFilter filter)
返回一个字符串数组,用于命名由此抽象路径名表示的目录中的文件和目录,以满足指定的过滤器。
File[] listFiles()
返回一个抽象路径名数组,表示此抽象路径名表示的目录中的文件。
File[] listFiles​(FileFilter filter)
返回一个抽象路径名数组,表示此抽象路径名表示的目录中满足指定过滤器的文件和目录。
File[] listFiles​(FilenameFilter filter)
返回一个抽象路径名数组,表示此抽象路径名表示的目录中满足指定过滤器的文件和目录。
static File[] listRoots()
列出可用的文件系统根目录。
boolean mkdir()
创建此抽象路径名指定的目录。
boolean mkdirs()
创建此抽象路径名指定的目录,包括任何必需但不存在的父目录。
boolean renameTo​(File dest)
重命名此抽象路径名表示的文件。
boolean setExecutable​(boolean executable)
一种方便的方法,用于设置此抽象路径名的所有者执行权限。
boolean setExecutable​(boolean executable, boolean ownerOnly)
设置此抽象路径名的所有者或每个人的执行权限。
boolean setLastModified​(long time)
设置此抽象路径名指定的文件或目录的上次修改时间。
boolean setReadable​(boolean readable)
一种方便的方法,用于设置此抽象路径名的所有者读取权限。
boolean setReadable​(boolean readable, boolean ownerOnly)
设置此抽象路径名的所有者或每个人的读取权限。
boolean setReadOnly()
标记此抽象路径名指定的文件或目录,以便仅允许读取操作。
boolean setWritable​(boolean writable)
一种方便的方法,用于设置此抽象路径名的所有者写入权限。
boolean setWritable​(boolean writable, boolean ownerOnly)
设置此抽象路径名的所有者或每个人的写入权限。
Path toPath()
返回从此抽象路径构造的java.nio.file.Path对象。
String toString()
返回此抽象路径名的路径名字符串。
URI toURI()
构造一个表示此抽象路径名的 file: URI。

 

示例

File file = new File("file.txt");
System.out.println(file.exists());
file.getAbsolutePath();
file.getName();
file.isFile()
FileOutputStream fileOutput = new FileOutputStream(file);

 

 

FileFilter

文件过滤器

@FunctionalInterface
public interface FileFilter

 

示例

File file = new File("e:\\");
File[] files = file.listFiles(new FileFilter() {
    @Override
    public boolean accept(File pathname) {
        if (pathname.getName().endsWith(".txt") || pathname.isDirectory()) {
            return true;
        }
        return false;
    }
});        

 

 posted on 2021-03-20 21:09  一计  阅读(53)  评论(0)    收藏  举报