Java中FileWriter的用法及wirte()重载方法详解

 更新时间:2023年10月16日 09:02:25   作者:No8g攻城狮  
这篇文章主要介绍了Java中FileWriter的用法及wirte()重载方法详解,FileWriter是Java编程语言中的一个类,用于将字符写入文件,它提供了一种简单而方便的方式来创建、打开和写入文件,通过使用FileWriter,我们可以将字符数据写入文本文件,需要的朋友可以参考下

一、用法介绍

FileWriter的用法很简单,可以总结为三个词:创建(new)、写出(write)、关闭(close);

  • 创建(new):就是我们平时常用的 new 一个;
  • 写出(write):利用 重载方法 write() 中的某一个写出内容;
  • 关闭(close):关闭流;

以下是一个具体的举例说明:

public class TestFileWriter {
 
    public static void main(String[] args) throws IOException {
        // 方式一,创建的文件会在项目里
        FileWriter fileWriter1 = new FileWriter("file01.txt");
        fileWriter1.write("我很骄傲我是中国人!");
        fileWriter1.write("此生无悔入华夏!");
        fileWriter1.write("\r\n人生自古谁无死,留取丹心照汗青!");
        fileWriter1.close();
        
        // 方式二,创建的文件会在指定的目录里(注意,这里一定要有写入的权限,否则会创建失败!)
        FileWriter fileWriter2 = new FileWriter("G:\\aaa\\file02.txt");
        fileWriter2.write("我很骄傲我是中国人!");
        fileWriter2.close();
    }
}

输出结果:

二、疑问解答

以下是汇总的几个常见问题:

2.1、如果这个文件不存在会怎么样?

如果这个文件不存在,那么就会帮我们自动创建一个,创建完以后的纯文本文件放在哪里呢?如果不指定目录就会放在这个 Java project 工程下面,与src目录和target目录同级。 如果指定目录就会把这个文件放到指定的目录下:如上述方式二;FileWriter fileWriter2 = new FileWriter("G:\\aaa\\file02.txt");

2.2、如果这个文件存在的话会怎么样?

如果这个纯文本文件已经存在,并且里面有内容,此时我们再添加内容,就会覆盖掉这个纯文本文件已有的内容。

2.3、如果不想覆盖之前的内容,想要追加内容怎么做?

其实这个也很简单,只需要在创建对象的时候,选择另外一个构造方法(重载形式的构造方法)就可以了。

FileWriter fw = new FileWriter("file01.txt", true);

或者:

FileWriter fileWriter2 = new FileWriter("G:\\aaa\\file02.txt", true);

2.4、添加数据,如何实现换行呢?

往纯文本文件里头添加的数据都是在同一行的,那么如何实现换行呢?

注意区分操作系统:

  • Windows 操作系统下:\r\n
  • Linux 操作系统下:\n
  • Mac 操作系统下:早期使用的是 \r,现在使用的是 \n

比如:fileWriter1.write("人生自古谁无死,\r\n留取丹心照汗青!");

三、用法拓展

3.1、write 方法重载

write() 有五种重载方式:

  1. write(int c):写入数字,利用 ASCII 码表 或者 Unicode 表转化
  2. write(String str):写入字符串
  3. write(char[] cbuf):写入字符数组
  4. write(String str, int off, int len):写入字符串的一部分
  5. write(char[] cbuf,int off,int len):写入字符数组的一部分

ASCII 码表中常用的:48 - 0,65 - A,97 - a

3.2、重载示例

具体举例说明:

 public static void testOverload() throws IOException {
        FileWriter fileWriter = new FileWriter("file03.txt");
        // 重载方法一:写入数字,利用 ASCII 码表 或者 Unicode 表转化
        // ASCII 码表中常用的:48 - 0,65 - A,97 - a
        fileWriter.write(65);
        fileWriter.write("\r\n");
 
        // 定义字符串
        String str = "我很骄傲我是中国人!";
        // 重载方法二:写入字符串
        fileWriter.write(str);
        fileWriter.write("\r\n");
        // 重载方法三:写入字符数组
        char[] javaArray = {'J','a','v','a'};
        fileWriter.write(javaArray);
        fileWriter.write("\r\n");
        // 重载方法四:写入字符串的一部分(结果:我是中国人)
        fileWriter.write(str, 4, 5);
        fileWriter.write("\r\n");
        // 重载方法五:写入字符数组的一部分(结果:v)
        fileWriter.write(javaArray, 2, 1);
 
        fileWriter.close();
    }

输出结果为:

到此这篇关于Java中FileWriter的用法及wirte()重载方法详解的文章就介绍到这了,更多相关Java的FileWriter内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java虚拟机运行时数据区域汇总

    Java虚拟机运行时数据区域汇总

    这篇文章主要给大家介绍了关于Java虚拟机运行时数据区域的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Java具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-08-08
  • mybatis foreach传两个参数批量删除

    mybatis foreach传两个参数批量删除

    这篇文章主要介绍了mybatis foreach 批量删除传两个参数,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-04-04
  • Java 生成图片验证码3种方法(字母、加减乘除、中文)

    Java 生成图片验证码3种方法(字母、加减乘除、中文)

    这篇文章主要介绍了Java 生成图片验证码3种方法(字母、加减乘除、中文),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • java遍历properties文件操作指南

    java遍历properties文件操作指南

    在java项目开发过程中,使用properties文件作为配置基本上是必不可少的,有很多如系统配置信息,java如何遍历properties文件呢,本文将详细介绍,希望可以帮助到您
    2012-11-11
  • 基于Java ORM框架的使用详解

    基于Java ORM框架的使用详解

    本篇文章是对Java中ORM框架的使用进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • SpringBoot中@Value获取值和@ConfigurationProperties获取值用法及比较

    SpringBoot中@Value获取值和@ConfigurationProperties获取值用法及比较

    在Spring Boot中,@Value注解是一个非常有用的特性,它允许我们将外部的配置注入到我们的Bean中,@ConfigurationProperties用于将配置文件中的属性绑定到 Java Bean 上,本文介绍了@Value获取值和@ConfigurationProperties获取值用法及比较,需要的朋友可以参考下
    2024-08-08
  • SpringBoot短链接跳转的代码实现

    SpringBoot短链接跳转的代码实现

    短链跳转是一种通过将长链接转换为短链接的方式,以便在互联网上进行链接共享和传播的技术,短链将原始长链接通过特定算法转换为较短的链接,使得它更容易分享、传播和展示,本文给大家介绍了SpringBoot短链接跳转的代码实现,需要的朋友可以参考下
    2024-03-03
  • 使用Jitpack发布开源Java库的详细流程

    使用Jitpack发布开源Java库的详细流程

    这篇文章主要介绍了使用Jitpack发布开源Java库的详细流程,本文通过图文实例代码相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-02-02
  • Java抽象类和普通类区别、 数组跟List的区别解析

    Java抽象类和普通类区别、 数组跟List的区别解析

    这篇文章主要介绍了Java抽象类和普通类区别、 数组跟List的区别,在这里需要注意List是一个接口,不能直接实例化,需要使用具体的实现类来创建对象,本文结合示例代码介绍的非常详细,需要的朋友参考下吧
    2023-09-09
  • SpringBoot中必须掌握的常用注解小结

    SpringBoot中必须掌握的常用注解小结

    Spring Boot 提供了大量的注解,用于简化配置和加速程序开发,这篇文章主要来和大家Spring Boot中的常用注解的具体使用,希望对大家有所帮助
    2024-11-11

最新评论