Java 中如何实现文件的读写操作?(十六)

这篇具有很好参考价值的文章主要介绍了Java 中如何实现文件的读写操作?(十六)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在Java中,文件I/O(输入/输出)操作是一项非常基础的任务。在Java中,可以使用File和FileInputStream、FileOutputStream、BufferedReader、PrintWriter等类来进行文件读写操作。

  1. 文件读取

在Java中,可以使用FileInputStream和BufferedReader类来读取文件。

  • FileInputStream:

    FileInputStream是一个用于从文件系统中打开文件的输入流。它继承自InputStream类,并且提供了许多与文件I/O相关的方法。我们可以使用它来打开指定路径下的文件,并从该文件中读取数据。

    FileInputStream inputStream = null;
    try {
        File file = new File("file.txt");
        inputStream = new FileInputStream(file);
        int content;
        while ((content = inputStream.read()) != -1) {
            // 处理读取到的字节
        }
    } catch (IOException e) {
        e.printStackTrace();
    } finally {
        if (inputStream != null) {
            try {
                inputStream.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
    

    在上面的代码中,我们首先创建了一个File对象,然后使用FileInputStream来读取该文件中的内容。由于FileInputStream每次只能读取一个字节,因此我们需要使用while循环来连续读取每个字节。当read()方法返回-1时,表示已经读取完整个文件。

  • BufferedReader:

    BufferedReader是一个包装器类,它将一个字符输入流包装成一个缓冲字符输入流。它的好处是可以一次性读取多个字符,从而提高读取文件的效率。

    BufferedReader reader = null;
    try {
        File file = new File("file.txt");
        FileReader fileReader = new FileReader(file);
        reader = new BufferedReader(fileReader);
        String content;
        while ((content = reader.readLine()) != null) {
            // 处理读取到的一行字符串
        }
    } catch (IOException e) {
        e.printStackTrace();
    } finally {
        if (reader != null) {
            try {
                reader.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
    

    在上面的代码中,我们首先创建了一个File对象,然后使用FileReader将文件转换为字符流,并使用BufferedReader对其进行包装。这里使用了readLine()方法来读取每行内容,当该方法返回null时,表示已经读取完整个文件。

  1. 文件写入

在Java中,可以使用FileOutputStream和PrintWriter类来写入文件。

  • FileOutputStream:

    FileOutputStream是一个用于向文件系统中输出数据的输出流。它继承自OutputStream类,并且提供了许多与文件I/O相关的方法。我们可以使用它来打开指定路径下的文件,并向该文件中写入数据。

    FileOutputStream outputStream = null;
    try {
        File file = new File("file.txt");
        outputStream = new FileOutputStream(file);
        String content = "Hello, world!";
        byte[] bytes = content.getBytes();
        outputStream.write(bytes);
    } catch (IOException e) {
        e.printStackTrace();
    } finally {
        if (outputStream != null) {
            try {
                outputStream.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
    

    在上面的代码中,我们首先创建了一个File对象,然后使用FileOutputStream来写入该文件中的内容。由于FileOutputStream每次只能写入一个字节或一个字节数组,因此我们需要将要写入的字符串转换为字节数组。

  • PrintWriter:

    PrintWriter是一个包装器类,它将一个字符输出流包装成一个打印输出流。它提供了方便的方法来输出各种数据类型,包括字符串、数字等。另外,PrintWriter也可以在写入数据时进行格式化处理。

    PrintWriter writer = null;
    try {
        File file = new File("file.txt");
        FileWriter fileWriter = new FileWriter(file);
        writer = new PrintWriter(fileWriter);
        String content = "Hello, world!";
        writer.println(content);
    } catch (IOException e) {
        e.printStackTrace();
    }
    
    

在上面的代码中,我们首先创建了一个File对象,然后使用FileWriter将文件转换为字符流,并使用PrintWriter对其进行包装。这里使用了println()方法来写入字符串,它会自动在字符串末尾添加一个换行符。

  1. 文件复制

在Java中,可以使用FileInputStream和FileOutputStream来实现文件的复制功能。

FileInputStream inputStream = null;
FileOutputStream outputStream = null;
try {
    File sourceFile = new File("source.txt");
    File targetFile = new File("target.txt");
    inputStream = new FileInputStream(sourceFile);
    outputStream = new FileOutputStream(targetFile);
    byte[] buffer = new byte[1024];
    int length;
    while ((length = inputStream.read(buffer)) > 0) {
        outputStream.write(buffer, 0, length);
    }
} catch (IOException e) {
    e.printStackTrace();
} finally {
    if (inputStream != null) {
        try {
            inputStream.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    if (outputStream != null) {
        try {
            outputStream.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

在上面的代码中,我们首先创建了两个File对象,其中一个表示源文件,另一个表示目标文件。然后使用FileInputStream和FileOutputStream来读取源文件并写入目标文件。由于每次只能读取一定长度的字节数据,因此需要使用一个缓冲区(byte数组)来存储读取到的数据。最后,当读取完整个文件时,关闭输入输出流。

  1. 文件删除

在Java中,可以使用File类的delete()方法来删除一个文件。

File file = new File("file.txt");
if (file.delete()) {
    System.out.println("文件删除成功!");
} else {
    System.out.println("文件删除失败!");
}

在上面的代码中,我们首先创建了一个File对象,然后使用它的delete()方法来删除该文件。当该方法返回true时,表示文件删除成功;当返回false时,表示文件删除失败。

  1. 文件重命名

在Java中,可以使用File类的renameTo()方法来实现文件重命名功能。

File sourceFile = new File("source.txt");
File targetFile = new File("target.txt");
if (sourceFile.renameTo(targetFile)) {
    System.out.println("文件重命名成功!");
} else {
    System.out.println("文件重命名失败!");
}

在上面的代码中,我们首先创建了两个File对象,其中一个表示原始文件名,另一个表示目标文件名。然后使用原始文件名的renameTo()方法来将其重命名为目标文件名。当该方法返回true时,表示文件重命名成功;当返回false时,表示文件重命名失败。

总结:

在Java中,文件读写操作是一项非常基础的任务。我们可以使用File、FileInputStream、FileOutputStream、BufferedReader、PrintWriter等类来实现文件的读写、复制、删除和重命名等功能。需要注意的是,在进行文件I/O操作时,一定要及时关闭输入输出流,以免引发内存泄漏等问题。文章来源地址https://www.toymoban.com/news/detail-433125.html

到了这里,关于Java 中如何实现文件的读写操作?(十六)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java IO:文件读写、流操作与常用技巧

    Java IO流指的是Java输入输出流,用于处理与文件、网络等设备之间的数据传输。Java提供了 InputStream 和 OutputStream 两个抽象类作为所有输入输出流类的基类,以及 Reader 和 Writer 两个抽象类作为所有 字符 输入输出流类的基类。同时,Java还提供了许多具体的输入输出流类和字符输

    2024年02月04日
    浏览(40)
  • 【Java】文件的操作与输入输出流

    1. 狭义上的文件 : 硬盘上保存的数据,都是“文件”来组织的,本质上都是二进制或是字符组织的数组,被打包成一个文件存在硬盘上。常见的文件有图片,文本,可执行文件,音频,视频…文件夹也是一种特殊的文件,也叫目录通常所说的文件都是存储在硬盘上面的,硬

    2024年02月03日
    浏览(43)
  • Java 基于Apache POI实现Excel读写操作

    Win10 Java JDK1.8 pom.xml配置 代码实现 exmple.xml 补充说明 创建工作簿 POI创建工作簿的API有3种: HSSFWorkbook : 此API用于操作Excel 2003及之前的版本(文件扩展名 .xls ),优点是导出速度快,缺点是导出的行数有局限性,最多为65535行,超出65536条后系统就会报错。对内存消耗比较大,容

    2024年02月15日
    浏览(40)
  • 《C#零基础入门之百识百例》(九十六)本地数据交互 -- 读写Excel表格文件

    本文属于 C#零基础入门之百识百例 系列文章。此系列文章旨在为学习C#语言的童鞋提供一套系统的学习路径。此系列文章都会通过【知识点】【练习题】的形式呈现。有任何问题

    2024年02月08日
    浏览(41)
  • 【Python+Selenium】 实现对excel文件的读写操作,轻轻松松一步到位

    利用selenium在做自动化测试的时候,经常会用到数据来做批量测试,常用的方式有读取txt文件,xml文件,csv文件以及excel文 件几种。 使用 excel 来做数据管理时,需要利用 xlrd、xlwt 开源包来读写 excel。 在C:UsersAnyDesktop下,我们有一个名字叫test1的excel文件,里面的Sheet1数据表

    2024年02月05日
    浏览(43)
  • 苍穹外卖集成 Apache POI Java实现Excel文件的读写下载

    Apache POI - the Java API for Microsoft Documents Project News 16 September 2022 - POI 5.2.3 available The Apache POI team is pleased to announce the release of 5.2.3. Several dependencies were updated to their latest versions to pick up security fixes and other improvements. A summary of changes is available in the Release Notes. A full list of changes is a

    2024年02月09日
    浏览(59)
  • C语言——文件操作(2)文件的读写操作

            之前,我讲解了文件的基本情况与读写模式,看到这篇博客的小伙伴们先参考这篇博客:  C语言——文件操作详解(1)_         接下来,我会继续讲解文件操作的第二大步:文件读/写操作。 目录         A.文件的顺序读写         一.字符输入输出函数 

    2024年02月09日
    浏览(41)
  • 【文件操作与IO】Java中如何操作文件

    目录  Java 中操作文件 File 概述 属性 构造方法 方法 代码示例 文件内容的读写 —— 数据流  InputStream 概述 FileInputStream 概述 利用 Scanner 进行字符读取 OutputStream 概述 利用 OutputStreamWriter 进行字符写入 利用 PrintWriter 找到我们熟悉的方法 代码参考 如何按字节进行数据读 如何按

    2024年02月12日
    浏览(57)
  • C语言第三十六弹---文件操作(中)

    ✨ 个人主页:   熬夜学编程的小林 💗 系列专栏:   【C语言详解】   【数据结构详解】 文件操作 1、文件的顺序读写 1.1、顺序读写函数介绍 1.1.1、fgetc 与 fputc 1.1.2、fgets 与 fputs 1.1.3、fscanf 与 fprintf 1.1.4、fread 与 fwrite 1.2、对比一组函数 总结 函数名 功能 适用于 fgetc 字符输

    2024年03月11日
    浏览(92)
  • c++文件操作 (1) -- 读写文件

    目录 为什么使用文件操作 文件输入流和输出流 -- 相对于内存而言 文件操作  1. 文件操作常用类以及头文件 2. 文件输入流(写文件操作)  1. 写文本文件  1)文件操作是使用对象来实现的  2)文件输出  3)打开文件  open函数 : 2. 读文本文件  3. 写二进制文件   4. 读二进制

    2024年01月25日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包