Java_io_键盘录入 字符流和字节流的转化
2013-05-04 22:39
429 查看
本博客为子墨原创,转载请注明出处!
http://blog.csdn.net/zimo2013/article/details/8885283
[b]IO流简介>> [/b]
1.流转换实例
键盘录入: BufferedReader bufr = new BufferedReader(new InputStreamReader(System.in));//键盘输入的字节流转为字符流控制台输出:BufferedWriter bufw = new BufferedWriter(new OutputStreamWriter(System.out);//将字符流转为字节流
2.流转换特点
(1).InputStreamReader从字节流-->字符流的转化,字符流和字节流之间的桥梁,其子类FileReader就是按照假定默认字符编码
(2).OutputStreamWriter从字符流-->字节流的转化,字符流和字节流之间的桥梁,其子类FileWriter就是按照假定默认字符编码
可以将FileWriter为OutputStreamWriter按默认编码GBK,FileReader为InputstreamReader按默认编码GBK
BufferedWriter bufw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("1.txt"), "GBK"));
提示:在进行流操作时,必须明确操作的源和目的,以便选取合适的类和操作对象!
/* 键盘-->控制台 Strawberry2013-5-4 */ import java.io.*; class SystemIn { public static void main(String[] args) throws IOException { //System.setIn(new FileInputStream("1.xtt")); //重新分配标准输入流,会认为System.in就是该流 //System.setOut(new PrintStream("1.xtt")); //重新分配标准输出流,会认为System.out 就是该输出流 BufferedReader bufr = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bufw = new BufferedWriter(new OutputStreamWriter(System.out)); String str = null; while(true) { str = bufr.readLine(); if(str.equals("over")) break; bufw.write(str.toUpperCase()); bufw.newLine(); bufw.flush(); //此处必须进行刷新,因为写入的数据还在缓冲区中并未到达System.out,只有刷新后才能到达! } bufw.close(); bufr.close(); } }
/* 键盘-->文件() 如果文件使用字符流存储,则不需要转化;如果以字节流存储则还需要使用OutputStreamWriter转化 Strawberry2013-5-4 */ import java.io.*; class SystemIn { public static void main(String[] args) throws IOException { BufferedReader bufr = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bufw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("1.txt")); //如果以字节流存储以上!如果还是字符就不需要转化BufferedWriter(new FileWriter("1.txt")) String str = null; while(true) { str = bufr.readLine(); if(str.equals("over")) break; bufw.write(str.toUpperCase()); bufw.newLine(); bufw.flush(); } bufw.close(); bufr.close(); } }
相关文章推荐
- java--IO流-LineNumberReader,读取键盘录入,字符字节流转换,改变标准输入输出设备,异常的日志信息,系统信息
- 黑马程序员——7.1.IO(其他对象API(System类、Runtime类、Math类、Date类)字节流与字符流、IO异常处理、缓冲区、键盘录入、转换流、异常日志、流的操作总结)
- Java基础---IO(一)---IO流概述、字符流、字节流、流操作规律
- java的IO操作:字节流与字符流操作
- Java IO操作——字节流(OutputStream、InputStream)和字符流(Writer、Reader)
- JAVA之旅(二十七)——字节流的缓冲区,拷贝mp3,自定义字节流缓冲区,读取键盘录入,转换流InputStreamReader,写入转换流,流操作的规律
- 【Java之IO】1.字节流和字符流
- java IO 之 字节流和字符流的区别
- java IO (四) 字节流与字符流之间的转换
- java学习之路----IO-------字节流和字符流的区别,文件的复制
- IO:字节流转化字符流
- Java IO:字节流与字符流
- JAVA之旅(二十七)——字节流的缓冲区,拷贝mp3,自定义字节流缓冲区,读取键盘录入,转换流InputStreamReader,写入转换流,流操作的规律
- java IO(File类、字节流与字符流、字节字符转换流) 总结
- Java IO中字节流和字符流的区别
- Java IO 字节流与字符流 (二)
- 黑马程序员-JAVA高级视频_IO输入与输出-19天-9(读取键盘录入)
- 黑马程序员——java的IO之字符流,字节流,转换流
- JAVA IO 字节流与字符流
- java io 字节流 字符流