java files常用方法

Java文件常用方法包括创建、读取、写入、删除等操作。

Java中的Files类是java.nio.file包下的一个工具类,它提供了一些用于文件和目录操作的静态方法,这些方法都是基于NIO(New Input/Output)的,相比于传统的IO操作,NIO更加高效、灵活,下面我们来详细介绍一下Files类中常用的方法。

1、创建文件或目录

java files常用方法

创建文件可以使用Files类的createFile()方法,创建目录可以使用createDirectory()方法,这两个方法都接受一个Path对象作为参数,表示要创建的文件或目录的路径,如果文件或目录已经存在,那么这两个方法都会抛出FileAlreadyExistsException异常。

示例代码:

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
public class FilesDemo {
    public static void main(String[] args) {
        Path filePath = Paths.get("test.txt");
        Path dirPath = Paths.get("testDir");
        try {
            Files.createFile(filePath);
            Files.createDirectory(dirPath);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

2、读取文件内容

Files类提供了readAllBytes()、readAllLines()、readAllChars()等方法,用于读取文件的内容,这些方法都接受一个Path对象和一个Charset对象作为参数,表示要读取的文件的路径和字符集,返回值是一个字节数组、字符串列表或字符数组,分别对应于文件的全部内容、所有行的内容和所有字符的内容。

java files常用方法

示例代码:

import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.List;
public class FilesDemo {
    public static void main(String[] args) {
        Path filePath = Paths.get("test.txt");
        try {
            byte[] bytes = Files.readAllBytes(filePath);
            String content = new String(bytes, StandardCharsets.UTF_8);
            System.out.println("文件内容:" + content);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

3、写入文件内容

Files类提供了write()、writeAllBytes()、writeAllLines()等方法,用于将内容写入文件,这些方法都接受一个Path对象和一个字节数组、字符串列表或字符串作为参数,表示要写入的文件的路径和内容,如果文件不存在,那么这些方法都会创建一个新文件;如果文件已存在,那么这些方法都会覆盖原有内容。

示例代码:

java files常用方法

import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.List;
public class FilesDemo {
    public static void main(String[] args) {
        Path filePath = Paths.get("test.txt");
        String content = "Hello, world!";
        List<String> lines = List.of("Line 1", "Line 2", "Line 3");
        byte[] bytes = content.getBytes(StandardCharsets.UTF_8);
        byte[] allBytes = linesToBytes(lines);
        try {
            Files.write(filePath, content.getBytes(StandardCharsets.UTF_8)); // 覆盖原有内容
            Files.write(filePath, allBytes); // 覆盖原有内容,写入多行内容
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                Files.write(filePath, bytes); // 覆盖原有内容,写入单行内容
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
    private static byte[] linesToBytes(List<String> lines) {
        return lines.stream().map(line -> line + System.lineSeparator()).collect(Collectors.joining()).getBytes(StandardCharsets.UTF_8);
    }
}

4、删除文件或目录

Files类提供了delete()、deleteIfExists()等方法,用于删除文件或目录,这些方法都接受一个Path对象作为参数,表示要删除的文件或目录的路径,如果文件或目录不存在,那么这些方法都不会执行任何操作;如果文件或目录存在,那么这些方法都会删除它们,deleteIfExists()方法还会返回一个布尔值,表示是否成功删除了文件或目录。

示例代码:

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import javafx.scene.control.*; // 引入ComboBox控件所需的库,这里以JavaFX为例,实际项目中可以根据需求选择其他库或自定义控件实现类似功能。

原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/226610.html

Like (0)
Donate 微信扫一扫 微信扫一扫
K-seo的头像K-seoSEO优化员
Previous 2024-01-18 18:20
Next 2024-01-18 18:21

相关推荐

  • linux该如何改名

    在Linux系统中,我们可以使用`mv`命令来改变文件或目录的名称,`mv`命令的基本格式如下:mv [选项] 源文件或目录 目标文件或目录下面我们详细介绍一下如何使用`mv`命令进行文件和目录的重命名。1. 重命名文件要重命名一个文件,只需将原文件名作为`mv`命令的第一个参数,新文件名作为第二个参数,我们要将文件`file1.tx……

    2023-11-27
    0142
  • linux中w命令详解

    Linux whatis命令的使用方法whatis命令是Linux系统中一个非常实用的命令,它可以帮助我们快速了解一个文件或者目录的类型和用途,通过使用whatis命令,我们可以在终端中输入一个文件名或者目录名,然后系统会自动显示出与之相关的简要描述信息,这对于我们在使用Linux系统时,快速了解某个文件或目录的作用非常有帮助。1、w……

    2024-02-22
    0174
  • linux rm命令详解

    在Linux操作系统中,rm命令是一个非常重要的命令,它用于删除文件或目录,rm命令的使用需要谨慎,因为一旦使用不当,可能会导致数据丢失,本文将详细介绍rm命令的使用方法和注意事项。一、rm命令的基本用法1. 删除文件rm命令最基本的用法就是删除文件,要删除名为file.txt的文件,可以使用以下命令:```bashrm file.t……

    2023-11-06
    0163
  • 子目录是什么意思,文件夹的子目录是什么意思

    子目录是指在一个文件夹(也称为目录)内部,再创建一个或多个新的文件夹,这些新的文件夹可以进一步细分,形成一个层级结构,这种层次结构通常用于组织和管理文件和数据,子目录可以帮助我们更好地理解文件和文件夹之间的关系,以及如何在文件系统中查找和访问它们。文件夹的子目录是指在一个文件夹内部创建的另一个文件夹,这个新的文件夹可以包含其他文件和子……

    2023-12-18
    0304
  • linux显示no such file

    在Linux系统中,当我们尝试执行一个文件时,可能会遇到“No such file or directory”的错误提示,这个错误提示意味着系统无法找到指定的文件或目录,本文将深入探讨这个错误背后的原因,并提供一些解决方法。1、文件路径问题我们需要检查文件路径是否正确,在Linux系统中,路径是区分大小写的,因此需要确保路径中的字母都……

    2024-02-24
    0221
  • linux的目录结构有哪些

    Linux的目录结构是其文件系统的基础,它定义了文件和目录在磁盘上的组织方式,这种结构的设计使得用户可以方便地管理和查找文件,以下是Linux的主要目录结构:1、/(根目录):这是Linux文件系统的顶层目录,所有其他目录都从这里开始,根目录下的文件和目录包括系统配置文件、设备文件等。2、/bin:这个目录包含了基本的可执行文件,如常……

    2023-12-31
    0121

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

免备案 高防CDN 无视CC/DDOS攻击 限时秒杀,10元即可体验  (专业解决各类攻击)>>点击进入