java IO流用法

本文介绍了Java中BufferedWriter和BufferedReader的使用,以及为何建议使用PrintWriter代替BufferedWriter,因为PrintWriter支持字符流和字节流,且其print、println方法能接受更多类型参数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、BufferedWriter & BufferedReader 的用法
使用标准IO的例子

import java.io.*;
public class TestIO {
    public static void main(String[] args) throws IOException {
        // 输入输出流,这里用标准输入输出流举例,也可以是文件流,网络流等。
        InputStream inputStream = System.in;
        OutputStream outputStream = System.out;

        BufferedReader in = new BufferedReader(new InputStreamReader(inputStream));
        BufferedWriter out = new BufferedWriter(new OutputStreamWriter(outputStream));

        String str = in.readLine(); // 读入字符串

        str = str.toUpperCase(); // 转大写
        out.write(str); // 写入缓冲流
        out.newLine(); // 换行
        out.flush(); // 刷新缓冲区,完成输出
        out.close();
        in.close();
    }
}

运行结果
在这里插入图片描述
二、PrintWriter 用法
建议用 PrintWriter 代替 BufferedWriter,因为 PrintWriter 同时支持字符流和字节流操作,而 BufferedWriter 只支持字符流操作,而且PrintWriter的print、println方法可以接受任意类型的参数,而BufferedWriter的write方法只能接受字符、字符数组和字符串。

以下是改用 PrintWriter 和文件流的用法示例

import java.io.*;
public class TestIO {
    public static void main(String[] args) throws IOException {
        File file = new File("data.txt");
        FileOutputStream fileOutputStream = new FileOutputStream(file);

        int a = 1, b = 2;
        PrintWriter out = new PrintWriter(new OutputStreamWriter(
                fileOutputStream, "UTF-8"), true); // UTF-8编码,自动刷新缓冲区

        out.println(a + b);
        fileOutputStream.close();
    }
}

运行结果
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值