[每日一练] java 的输入输出流(二)

本文介绍了Java中的字符流,包括字符流由两个字节流组成,Reader和Writer作为面向字符输入输出的超类。详细讲解了如何使用FileReader和FileWriter进行文件字符流的读写操作,并演示了如何通过BufferedReader和BufferedWriter实现缓冲区方式进行数据输入输出,以提高效率。

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

[每日一练] java 的输入输出流(二)

一、字符流

1.一个字符流由两个字节流组成。

2.Reader 和Writer 是面向字符的输入和输出的超类。

3.文件字符流的读写

(1)创建文件字符流对象,并打开文件
①创建FileReader 输入流对象

public FileReader(String filename)
public FileReader(File file)

②创建FileWriter 输出流对象

public FileWriter (String filename)
public FileWriter (File file)

filename:打开的文件的名 file:文件类File 的对象

(2)文件字符流的读写 --类似字节流的读写

(3)文件字符流的关闭

public void close() throws IOException

eg: j键盘输入文字,写入文件中

package io;

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

public class FilecharOut {
	public static void main(String[] args) {
		char c[] = new char[512];
	    byte b[] = new byte[512];
	  
	    try {
	    	//创建字符输出流对象
			FileWriter wf= new FileWriter("E:\\data\\1.txt");
			//键盘输入一行字符到字节数组,并返回输入字符个数
			System.out.println("请输入字符");
			int n=System.in.read(b);
			//将b中元素转换为字符,放入C中
			for(int i = 0;i<n;i++) {
				c[i] = (char)b[i];
            //将字符数组写入文件
				wf.write(c);
			    wf.close();	
			}	
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
			System.out.println("创建字符输出流对象失败");
		}
	}
}

二、字符缓冲流与文件的读写

–BufferedReader 和 BufferedWriter 以缓冲区方式对数据进行输入输出

public BufferedReader (Reader a)
public BufferedReader (Reader a,int size)

a:为超类Reader 的对象 size :为用户设定的缓冲区大小

除此之外,还有

public String readLine() throws IOException

–用于从文件中读出一行字符

2.BufferedWriter类

public BufferedWriter(writer a)
public BufferedWriter(writer a,int size)

除此之外,还有

public void newdLine() throws IOException

–用于写入一行字符

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值