[java]BufferedReader的问题 新手 求大神给下面一点代码加注释 跪谢!!

package FastReader;
import java.io.*;

/*

  • 缓冲读入,优化文件读入效率 */ public class BufferRead { public static String bufferRead(String filename) throws IOException { BufferedReader in = new BufferedReader(new FileReader(filename)); String s; StringBuilder sb = new StringBuilder(); while ((s = in.readLine()) != null) { sb.append(s); sb.append("\n"); } in.close(); return sb.toString(); } }

放到代码库里显示这样看着太累

这就是一个简单读取文件内容并以字符串格式返回的例子,添加简单注释如下

 public class BufferRead {
    /**
     * 一个静态方法,实现将文件中的内容读取出来转换成String返回
     * @param filename
     * @return
     * @throws IOException
     */
    public static String bufferRead(String filename) throws IOException {
        //定义文件读取类
        BufferedReader in = new BufferedReader(new FileReader(filename));
        String s;
        //字符串连接
        StringBuilder sb = new StringBuilder();
        //按行读取文件内容,并拼接到StringBuilder中
        while ((s = in.readLine()) != null) {
            sb.append(s);
            sb.append("\n");
        }
        //关闭读取流,并返回
        in.close();
        return sb.toString();
    }
}

package FastReader;
import java.io.*;
/*缓冲读入,优化文件读入效率 */
public class BufferRead {
public static String bufferRead(String filename) throws IOException {
/// 以打开指定文件的读取字符流in
BufferedReader in = new BufferedReader(new FileReader(filename));
String s;
StringBuilder sb = new StringBuilder();
/// 逐行读取字符串,存入StringBuilder
while ((s = in.readLine()) != null) {
sb.append(s);
sb.append("\n");
}
/// 关闭流
in.close();
return sb.toString();
}
}

package FastReader;
import java.io.*;
/*缓冲读入,优化文件读入效率 */ 
public class BufferRead {
    public static String bufferRead(String filename) throws IOException {
        /// 以打开指定文件的读取字符流in
        BufferedReader in = new BufferedReader(new FileReader(filename));
        String s;
        StringBuilder sb = new StringBuilder();
        /// 逐行读取字符串,存入StringBuilder
        while ((s = in.readLine()) != null) {
            sb.append(s);
            sb.append("\n");
        }
        /// 关闭流
        in.close();
        return sb.toString();
    }
}

import java.util.Scanner;

import java.io.*;

/*
缓冲读入,优化文件读入效率 */
public class BufferRead {
public static String bufferRead(String filename) throws IOException {
//实例化字符流对象 读filename该文件
BufferedReader in = new BufferedReader(new FileReader(filename));
String s;
//实例化 StringBuilder对象
StringBuilder sb = new StringBuilder();
//字符流对象读取一行 赋给字符串s s不为null 表明流读取到内容

while ((s = in.readLine()) != null) {
//把s中存入的数据连接到sb对象中
sb.append(s);
//并开启新的一行
sb.append("\n");
}
//为了 提高性能 关闭流
in.close();
//吧sb对象中存入的数据用tostring方法链接成字符串 返回

return sb.toString();
}
}

package FastReader;
import java.io.*;
/*缓冲读入,优化文件读入效率 */
public class BufferRead {
public static String bufferRead(String filename) throws IOException {
/// 以打开指定文件的读取字符流in
BufferedReader in = new BufferedReader(new FileReader(filename));//因为BufferReader是一个高级流所以需要套在一个节点流上,所以里面创建一个FileReader的对象
String s;
StringBuilder sb = new StringBuilder();//这个是字符串的一个应用,有字符串就、拼接append 功能可以把读取的字符串连一起
/// 逐行读取字符串,存入StringBuilder
while ((s = in.readLine()) != null) {//readLine()是从文件中整行读取
sb.append(s);//这里就用了StringBuilder的append函数了,是为了将读取出来的每一行字符串连一起
sb.append("\n");//加换行符没读一句换行
}
/// 关闭流
in.close();
return sb.toString();
}
}