在学习IO流的种类后,我们明确不同流在图片或者文字的处理上都有对应的使用。那么当一种流不适用于当前的使用时,就需要把字符流和字节流进行转化,这就涉及到了轮换流的使用。下面我们先就轮换流的用法进行学习,然后进一步讲解字符流和字节流的替换方法。
1.转换流的使用
字面意思理解,转化流就是用来转化的,那么到底是什么转什么呢?我们可以通过以下的例子来熟悉。读取键盘输入的每一行内容,并写入到文本中,直到遇到over行结束输入
import java.io.*; public class TransStreamTest { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new FileWriter("C:\\Users\\41639\\Desktop\\java\\temp\\test1031.txt")); String line =null; while ((line=br.readLine())!=null) { if ("over".contentEquals(line)) { break; } bw.write(line); bw.newLine(); bw.flush(); } bw.close(); br.close(); } }
2.InputStreamReader:输入流转到读流
String fileName= "d:"+File.separator+"hello.txt"; File file=new File(fileName); Writer out=new OutputStreamWriter(new FileOutputStream(file)); out.write("hello"); out.close();
3.OutputStreamWriter:输出流转到写流
String fileName= "d:"+File.separator+"hello.txt"; File file=new File(fileName); Reader read=new InputStreamReader(new FileInputStream(file)); char[] b=new char[100]; int len=read.read(b); System.out.println(new String(b,0,len)); read.close();
以上就是java中字符流和字节流的替换方法,学会后当某一种用法不适用当前环境时,我们就可以把它进行另一种类型的转换,学会后就可以动手试验下了。