java-缓冲流对输入输出设备的包装

/*
字符流:
FileReader
FileWriter。

BufferedReader
BufferedWriter

字节流:
FileInputStream
FileOutputStream

BufferedInputStream
BufferedOutputStream

通过刚才的键盘录入一行数据并打印其大写,发现其实就是读一行数据的原理。
也就是readLine方法。

能不能直接使用readLine方法来完成键盘录入的一行数据的读取呢?

readLine方法是字符流BufferedReader类中的方法。

而键盘录入的read方法是字节流InputStream的方法。

那么能不能将字节流转成字符流在使用字符流缓冲去的readLine方法呢?

*/
import java.io.*;

class  TransStreamDemo
{
	public static void main(String[] args) throws IOException
	{
		//获取键盘录入对象。
		//InputStream in = System.in;

		//将字节流对象转成字符流对象,使用转换流。InputStreamReader
		//InputStreamReader isr = new InputStreamReader(in);

		//为了提高效率,将字符串进行缓冲区技术高效操作。使用BufferedReader

		//BufferedReader bufr = new BufferedReader(isr);

		//键盘的最常见写法。
		BufferedReader bufr =
				new BufferedReader(new InputStreamReader(System.in));

//		OutputStream out = System.out;
//		OutputStreamWriter osw = new OutputStreamWriter(out);
//		BufferedWriter bufw = new BufferedWriter(osw);
		BufferedWriter bufw = new BufferedWriter(new OutputStreamWriter(System.out));

		String line = null;

		while((line=bufr.readLine())!=null)
		{
			if("over".equals(line))
				break;
			bufw.write(line.toUpperCase());
			bufw.newLine();
			bufw.flush();
		}

		bufr.close();

	}
}

  

时间: 2024-10-13 01:40:55

java-缓冲流对输入输出设备的包装的相关文章

java 缓冲流 Buffer

缓冲流 Buffer :设置缓冲区加快执行效率 子类: (一)BufferedInputStream : 缓冲输入字节流 ,目的:提高读取文件的效率  注意: BufferedInputStream 他是没有读写数据的功能 内部实现 : 你面维护了一个8字节的byte数组. 使用步骤:        1.找到一个目标文件.        2.建立通道 new FileInputStream(" ");        3.创建一个缓冲字节输入流  new BufferedInputStr

java缓冲流,BufferedReader,BufferedWriter 详解

缓冲流,BufferedReader,BufferedWriter 1)BufferedReader,BufferedWriter是更高级的流,二者的源和目的地必须是字符输入流和字符输出流.如果把字符输入流做为BufferedReader流的源,把字符输出流作为BufferedWriter流的目的地,那么BufferedReader,BufferedWriter将有更强的读.写能力. //构造函数 BufferedReader(Reader in); BufferedWriter(Writer

关于Java缓冲流的一点误解

我在网上看到很多输入流和输出流的代码是这样的: public class BufferedTest { public static void main(String[] args) { InputStream in = null; OutputStream out = null; try { // 此处为演示效果 将in和out都定义在try块内 防止自动关闭 in = new BufferedInputStream(new FileInputStream("collect.txt")

java 缓冲流

缓冲流要“套接”在相应的节点流之上,对读写的数据提供了缓冲的功能,提高了读写效率,同时增加了一些新的方法. 四种缓冲流 BufferedReader(Reader in) BufferedReader(Reader in,int sz)//sz表示自定义缓冲区大小 BufferedWriter(Writer out) BufferedWriter(Writer out,int sz) BufferedInputStream(InputStream in) BufferedInputStream(

java _io_字符缓冲流的输入、输出

新增方法:输入:BufferedReader breader=new BufferedReader(Reader reader);.readLine()读取一行内容,返回字符串输出:BufferedWriter bwriter=new BufferedWirter(Writer writer);.newLine() 写入一个换行符 输入:File f =new File("C:\Users\10853\eclipse-workspace\hell\src\hell\abc");Buff

java的 IO流之缓冲流(转载)

java缓冲流本身不具IO功能,只是在别的流上加上缓冲提高效率,像是为别的流装上一种包装.当对文件或其他目标频繁读写或操作效率低,效能差.这时使用缓冲流能够更高效的读写信息.因为缓冲流先将数据缓存起来,然后一起写入或读取出来.所以说,缓冲流还是很重要的,在IO操作时记得加上缓冲流提升性能. 缓冲流分为字节和字符缓冲流 字节缓冲流为: BufferedInputStream-字节输入缓冲流 BufferedOutputStream-字节输出缓冲流 字符缓冲流为: BufferedReader-字符

【java的 IO流之缓冲流】

java缓冲流本身不具IO功能,只是在别的流上加上缓冲提高效率,像是为别的流装上一种包装.当对文件或其他目标频繁读写或操作效率低,效能差.这时使用缓冲流能够更高效的读写信息.因为缓冲流先将数据缓存起来,然后一起写入或读取出来.所以说,缓冲流还是很重要的,在IO操作时记得加上缓冲流提升性能. 缓冲流分为字节和字符缓冲流 字节缓冲流为: BufferedInputStream-字节输入缓冲流 BufferedOutputStream-字节输出缓冲流 字符缓冲流为: BufferedReader-字符

java IO流——字节流

字节流主要操作byte类型数据,以byte数组为准,主要操作类有InputStream(字节输入流).OutputSteam(字节输出流)由于IputStream和OutputStream都是抽象类,所要要用这两个类的话,则首先要通过子类实例化对象.下面就是这两个类的一些子类结构图 一.InputStream中的读取数据的方法如下: 1 .int read() 功能:读取一个字节的数据,并且返回读到得数据,如果返回-1,则表示读到输入流的末尾. 2.int read(byte[] b) 功能:从

四则运算缓冲流

package sizeyuansuan; import java.io.*; import java.util.*; public class Sizeyuansuan { public static void main(String[] args)throws IOException { FileOutputStream outfile= new FileOutputStream(new File("sizeyuansuan.txt")); PrintStream printStr