个性化阅读
专注于IT技术分析

Java BufferedReader类

本文概述

Java BufferedReader类用于从基于字符的输入流中读取文本。它可用于通过readLine()方法逐行读取数据。它使性能更快。它继承了Reader类。


Java BufferedReader类声明

让我们看一下Java.io.BufferedReader类的声明:

public class BufferedReader extends Reader

Java BufferedReader类构造函数

建设者 描述
BufferedReader(Reader rd) 它用于创建使用默认大小的输入缓冲区的缓冲字符输入流。
BufferedReader(Reader rd, int size) 它用于创建使用指定大小的输入缓冲区的缓冲字符输入流。

Java BufferedReader类方法

方法 描述
int read() 它用于读取单个字符。
int read(char[] cbuf, int off, int len) 它用于将字符读入数组的一部分。
boolean markSupported() 它用于测试标记和重置方法的输入流支持。
String readLine() 它用于读取一行文本。
boolean ready() 它用于测试输入流是否已准备好被读取。
long skip(long n) 用于跳过字符。
void reset() 它将流重新定位在此输入流上最后一次调用mark方法的位置。
void mark(int readAheadLimit) 它用于标记流中的当前位置。
void close() 它关闭输入流并释放与该流关联的任何系统资源。

Java BufferedReader示例

在此示例中, 我们使用Java BufferedReader类从文本文件testout.txt中读取数据。

package com.srcmini;
import java.io.*;
public class BufferedReaderExample {
	public static void main(String args[])throws Exception{  
		  FileReader fr=new FileReader("D:\\testout.txt");  
		  BufferedReader br=new BufferedReader(fr);  

		  int i;  
		  while((i=br.read())!=-1){
		  System.out.print((char)i);
		  }
		  br.close();  
		  fr.close();  
	}  
}

在这里, 我们假设你在“ testout.txt”文件中包含以下数据:

Welcome to srcmini.

输出:

Welcome to srcmini.

通过InputStreamReader和BufferedReader从控制台读取数据

在此示例中, 我们将BufferedReader流与InputStreamReader流连接, 以从键盘读取一行一行的数据。

package com.srcmini;
import java.io.*;
public class BufferedReaderExample{  
public static void main(String args[])throws Exception{  		  
	InputStreamReader r=new InputStreamReader(System.in);  
	BufferedReader br=new BufferedReader(r);  		  
	System.out.println("Enter your name");  
	String name=br.readLine();  
	System.out.println("Welcome "+name);  
}  
}

输出:

Enter your name
Nakul Jain
Welcome Nakul Jain
Java BufferedReader类

从控制台读取数据直到用户写入停止的另一个示例

在此示例中, 我们正在读取和打印数据, 直到用户停止打印为止。

package com.srcmini;
import java.io.*;
public class BufferedReaderExample{  
public static void main(String args[])throws Exception{  		  
	 InputStreamReader r=new InputStreamReader(System.in);  
	 BufferedReader br=new BufferedReader(r);  		  
	 String name="";  
	 while(!name.equals("stop")){  
	  System.out.println("Enter data: ");  
	  name=br.readLine();  
	  System.out.println("data is: "+name);  
	 }  		  
	br.close();  
	r.close();  
	}  
	}

输出:

Enter data: Nakul
data is: Nakul
Enter data: 12
data is: 12
Enter data: stop
data is: stop
赞(0)
未经允许不得转载:srcmini » Java BufferedReader类

评论 抢沙发

评论前必须登录!