Java零基础学java之IO流--09FileWrite字符输出流

package com.io_.write_;

import org.junit.Test;

import java.io.FileWriter;
import java.io.IOException;

public class FileWrite_ {
    public static void main(String[] args) {
        //使用FileWrite 将 “把自律当做一种习惯,你会越来越优秀”写入到 note.txt
        /*
        1. new FileWrite(File/String): 覆盖模式,相当于流的指针在首端
        2. new FileWrite(File/String,true): 追加模式,相当于流在指针在尾端
        3. write(int):写入单个字符
        4. write(char[]): 写入指定数组
        5. write(char[],off,len): 写入指定数组的指定部分
        6. write(string):写入整个字符串
        7. write(string,off,len):写入字符串的指定部分
        (如果写在一个方法中,产生了追加的效果是因为在close结束之前写了三次write)
        */
    }
    @Test
    public void fileWrite01() {
        // write(int) 单个字符
        //1. 定义需要写入的文件路径
        String filePath = "e:\\note.txt";
        //2. new FileWrite() 创建对象
        FileWriter fileWriter = null;//扩大作用域
        char buf = 'l';//单个字符
        try {
            fileWriter = new FileWriter(filePath);//捕获异常
            fileWriter.write(buf);

        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                //FileWrite使用后,必须要关闭(close)或刷新(flush),否则写入不到指定的文件(写不进去)!
                fileWriter.close();//捕获异常
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        System.out.println("程序结束。。。");
    }

    @Test
    public void fileWrite02(){
        //write(char[]): 写入指定数组
        String filePath = "e:\\note.txt";
        FileWriter fileWriter = null;
        char[] buf = new char[1024];
        String str = "把自律当做一种习惯,你会越来越优秀!";
        try {
            fileWriter = new FileWriter(filePath);//捕获异常
            //fileWriter.write(str.toCharArray());
            //write(char[],off,len): 写入指定数组的指定部分
            fileWriter.write(str.toCharArray(),0,4);


        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                fileWriter.close();//捕获异常
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        System.out.println("程序结束。。。");
    }

    @Test
    public void fileWrite03() {
        //write(string):写入整个字符串
        String filePath = "e:\\note.txt";
        FileWriter fileWriter = null;
        String str = "把自律当做一种习惯,你会越来越优秀";//定义一个字符串
        try {
            fileWriter = new FileWriter(filePath);
            fileWriter.write(str);
            //write(string,off,len):写入字符串的指定部分
            //fileWriter.write(str,0,3)

        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                fileWriter.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        System.out.println("程序结束。。。");
    }




}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值