一、转化流
将字节流转化成字符流的流。
例:
package test;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Scanner;
/**
* 转化流:将字节流转化成字符流的流
* @author xiangdonglee
*
*/
public class Test1 {
public static void main(String[] args) {
// in是一个字节流,在接收中文时会有问题,因此用Scanner包装了一下
// Scanner scan = new Scanner(System.in);
/*
* in是字节流,接收中文时会有问题,
* 因此,使用InputStreamReader转化流,将字节流转化为字符流。
* 字符流最高效的用法是缓冲流
*/
BufferedReader br =
new BufferedReader(new InputStreamReader(System.in));
System.out.println("请输入您想说的内容:");
try {
String say = br.readLine();
System.out.println("您想说的是:" + say);
br.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
二、打印流
例:
package test;
import java.io.File;
import java.io.FileWriter;
import java.io.PrintWriter;
/**
* 打印流:PrintWriter
* 它带有一个小的缓冲区,是轻量级的及时刷新缓冲的小流
*
* @author xiangdonglee
*
*/
public class Test2 {
public static void main(String[] args) {
File file = new File("a.txt");
if(!file.exists()) {
try {
file.createNewFile();
} catch (Exception e) {
e.printStackTrace();
}
}
try {
// 打印流一定要加上true,否则就没有刷新缓冲功能
PrintWriter out = new PrintWriter(
new FileWriter(file), true);
String say = "hello java";
out.write(say);
out.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}