Java 简单使用字符流

在这里插入图片描述
以字符为单位读写。
字符流只能用于 文本文件。(jpg等不能用)
在这里插入图片描述

文件流

节点流:
提供基本的文件读写。
FileReader:
FileWriter:
读:

	public static void main(String[] args) throws IOException {
		// 读
		// 1.
		FileReader fr = new FileReader("f:/data/a.txt");
		// 2. 读 读到文件尾 返回  -1
		System.out.println(fr.read());//每次读一字符,返回int值
		System.out.println((char)fr.read());
		System.out.println(fr.read());// 文件尾 返回-1
		// 循环
		int temp;
		while((temp = fr.read()) != -1){
			System.out.print((char)temp);
		}

		// 3.
		fr.close();
	}

写:

	public static void main(String[] args) throws IOException {
		// String s = "hello你好啊"; b.txt
		// 1.     true - 追加    false - 覆盖  (默认)
		FileWriter fw = new FileWriter("f:/data/b.txt",true);
		// 2. 写
		String str = "hello你好啊";
		fw.write(str);
		// 3.
		fw.close();
	}

练习:
读取一个文件,逆序写入另一个文件中

package day0321;

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

public class TestFileReaderExam {

	public static void main(String[] args) throws IOException  {
		// 读 
		// 1.
		FileReader fr = new FileReader("f:/data/a.txt");
		// 2.
		StringBuilder sr = new StringBuilder();
		int temp;
		while((temp = fr.read()) != -1){
			sr.append((char)temp);
		}
//		System.out.println(sr);
		// 3
		fr.close();
		// 反转 写
		// 1.
		FileWriter fw = new FileWriter("f:/data/b.txt");
		// 2.
		String str = sr.reverse().toString();
		fw.write(str);// String
		// 3.
		fw.close();
	
		
	}

}

缓冲流

处理流。
提供缓冲区。
BufferedReader
BufferedWriter

	public static void main(String[] args) throws IOException {
		// 读
		// 1
		FileReader fr = new FileReader("f:/data/a.txt");
		BufferedReader bfr = new BufferedReader(fr);
		// 2. 一次读一行
		System.out.println(bfr.readLine());
//		System.out.println(bfr.readLine());// null
		String temp;
		while((temp = bfr.readLine()) != null){
			System.out.println(temp);
		}
		// 3.
		bfr.close();
	}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值