欢迎访问宙启技术站
智能推送

Java中的文件处理函数:创建、读取、写入和删除文件

发布时间:2023-06-11 16:48:34

Java是一种广泛使用的编程语言,其提供一组适用于文件处理的函数和类库。 在Java中,文件处理有四种基本的操作:创建、读取、写入和删除文件。 在本文中,我们将简单介绍Java中用于这四种操作的基本函数和类库。

一、创建文本文件

在Java中,使用File类的构造函数可以创建一个文本文件,如下所示:

File myFile = new File("filename.txt");

这行代码创建一个名为“filename.txt”的文本文件。

如果需要创建一个文件夹并存储文件,则可以使用mkdirs()函数:

File myFolder = new File("/folder1/folder2");
myFolder.mkdirs();

这行代码创建了一个名为“folder1”的文件夹,其内部包含名为“folder2”的子文件夹。

二、读取文件

Java提供了访问文件内容的函数,其主要有以下两种形式:

1. 使用FileInputStream读取文件

FileInputStream fis = null;
try {
    fis = new FileInputStream("filename.txt");
    int content;
    while ((content = fis.read()) != -1) {
        // 处理文件内容
    }
} catch (IOException e) {
    e.printStackTrace();
} finally {
    try {
        if (fis != null) {
            fis.close();
        }
    } catch (IOException ex) {
        ex.printStackTrace();
    }
}

其中,“content”是读取文件时每个字节的内容,fis.read()函数每次读取一个字节,同时将文件指针移到下一个字节。 当读取完文件的所有内容后,该函数返回-1,循环结束。

2. 使用BufferedReader读取文件

BufferedReader br = null;
try {
    br = new BufferedReader(new FileReader("filename.txt"));
    String line;
    while ((line = br.readLine()) != null) {
        // 处理文件内容
    }
} catch (IOException e) {
    e.printStackTrace();
} finally {
    try {
        if (br != null) {
            br.close();
        }
    } catch (IOException ex) {
        ex.printStackTrace();
    }
}

读取文件时,BufferedReader的readLine()函数一次性读取一行,并将行指针移动到下一行。 当已经读取所有的行后,该函数将返回null,并结束循环。

三、写入文件

文件写入可以使用FileOutputStream或PrintWriter:

1. 使用FileOutputStream写入文件

String content = "test content";
FileOutputStream fos = null;
try {
    fos = new FileOutputStream("filename.txt");
    fos.write(content.getBytes());
    fos.flush();
} catch (IOException e) {
    e.printStackTrace();
} finally {
    try {
        if (fos != null) {
            fos.close();
        }
    } catch (IOException ex) {
        ex.printStackTrace();
    }
}

2. 使用PrintWriter写入文件

try {
    PrintWriter pw = new PrintWriter(new FileWriter("filename.txt"));
    pw.write("test content");
    pw.flush();
} catch (IOException e) {
    e.printStackTrace();
}

当然,也可以使用PrintWriter的println()函数,其可以便于写入每一行的内容。

四、删除文件

在Java中,使用File类的delete()方法可以删除文件或文件夹(包括其内部所有的文件和文件夹)。

File myFile = new File("filename.txt");
myFile.delete();

需要注意的是,文件删除是不可逆的,因此如果删除了重要文件,则不能从垃圾箱或其他地方恢复。

综上所述,Java提供了强大的文件处理功能,可以方便地进行文件创建、读取、写入和删除。同时,为了避免出现意外错误,应在操作文件时谨慎对待。