Java文件和IO函数:处理文件读写和输入输出的常用函数和方法
Java是一种面向对象的编程语言,它一般用于开发运行在各种计算机平台上的应用程序和软件。Java具有良好的移植性、安全性和跨平台性,因此Java在软件开发中被广泛应用。本文主要介绍Java文件和IO函数,了解文件读写和输入输出的一些常用函数和方法。
Java文件类
Java允许通过File类来操作文件和目录。File类提供了一系列的方法来创建、删除和重命名文件和目录,检查文件或目录是否存在等。File类有以下常用方法:
1. 创建文件或目录
- createNewFile():创建文件
- mkdir():创建目录
- mkdirs():创建多级目录
2. 删除文件或目录
- delete():删除文件或单级目录
- deleteOnExit():在JVM退出时删除文件或目录
- deleteIfExists():删除文件或目录,若不存在则不操作
3. 重命名文件或目录
- renameTo(File dest):将当前文件或目录重命名为 dest 文件或目录
4. 检查文件或目录是否存在
- exists():判断文件或目录是否存在
- isFile():判断是否为文件
- isDirectory():判断是否为目录
Java流类
Java中的输入输出是通过流(stream)来实现的。可以将输入输出流分为字节流和字符流。字节流用于处理非文本数据,如图片、音频等;字符流用于处理文本数据。Java中流的操作可以用两个类来实现:InputStream/OutputStream和Reader/Writer。
字节流
InputStream和OutputStream是所有字节输入流和输出流的抽象类,所有具体的字节输入流与输出流都是从这两个类派生出来的。下面列出常用方法:
1. FileInputStream
用于读取文件的字节流。以下为常用方法:
- FileInputStream(String fileName):实例化一个字节输入流
- read():读取下一个字节,并返回下标
- close():关闭输入流
2. FileOutputStream
用于写入文件的字节流。以下为常用方法:
- FileOutputStream(String fileName):实例化一个文件输出流
- write(int c):将字节数据写入文件
- close():关闭输出流
字符流
Reader和Writer是字符输入和输出流的抽象类,所有具体的字符输入流和输出流都是从这两个类中派生出来的。常用的字符输入输出流有FileReader/FileWriter和BufferedReader/BufferedWriter,以下列出基本方法:
1. FileReader
用于读取文件的字符流。以下为常用方法:
- FileReader(File file):实例化一个文件输入流
- read():读取字符数据,并返回字符下标
- close():关闭输入流
2. FileWriter
用于写入文件的字符流。以下为常用方法:
- FileWriter(File file, boolean append):实例化一个文件输出流,append表示是否在文件尾追加
- write(char[] cbuf, int off, int len):将字符数组的一部分写入输出流
- close():关闭输出流
3. BufferedReader
用于读取文件的字符流的缓存输入流,可以提高读取效率。以下为常用方法:
- BufferedReader(Reader in):实例化一个字符输入缓存流
- readLine():从字符流中读取一行字符,并返回字符串
4. BufferedWriter
用于写入文件的字符流缓存输出流,可以提高写入效率。以下为常用方法:
- BufferedWriter(Writer out):实例化一个字符输出缓存流
- write(String s, int off, int len):将字节数组的一部分写入输出流,此处用字符串类型
IO函数
Java的IO函数主要有以下几类:
1. byte[] readAllBytes(Path path):读取文件的所有字节
2. byte[] readAllBytes(InputStream inputStream):读取输入流的所有字节
3. String readAllLines(Path path):读取文件的所有文本行
4. void write(Path path, byte[] bytes, OpenOption... options):将字节数组写入文件
5. void write(Path path, Iterable<? extends CharSequence> lines, Charset charSet, OpenOption... options):将字符串列表写入文件
6. InputStream newBufferedInputStream(Path path, OpenOption... options):创建缓冲输入流
7. OutputStream newBufferedOutputStream(Path path, OpenOption... options):创建缓冲输出流
8. BufferedReader newBufferedReader(Path path, Charset charset):创建缓冲字符输入流
9. BufferedWriter newBufferedWriter(Path path, Charset charset, OpenOption... options):创建缓冲字符输出流
10. FileInputStream fileInputStream = new FileInputStream(file):创建文件输入流
11. FileOutputStream fileOutputStream = new FileOutputStream(file):创建文件输出流
12. FileReader fileReader = new FileReader(file):创建文件字符输入流
13. FileWriter fileWriter = new FileWriter(file):创建文件字符输出流
以上是Java文件和IO函数的常用方法,涵盖了Java文件和IO函数处理的基本操作,我们可以通过学习这些函数和方法来实现常见的文件读写和输入输出操作。
