`
zg973595977
  • 浏览: 11976 次
社区版块
存档分类
最新评论

自己编写BufferedReader中的readLine方法

    博客分类:
  • java
阅读更多

import java.io.*;
/*
readLine方法的原理是将除回车符以外的字符全部存储到一个字符数组中(本例中用StringBuilder代替),等到读完一行后将其返回
自己编写一个BufferedReader对象中的readLine方法
*/
class MyReaderLine{
 private FileReader r;
 MyReaderLine(FileReader r){
  this.r=r;
 }
 public String myReaderLine() throws IOException{
  //StringBuilder用于暂时存储read方法读取的一个一个的字符,等到读完一行之后将其返回
  StringBuilder sb=new StringBuilder();
  int ch=0;
  while((ch=r.read())!=-1){
   //遇到回车符之后继续读取
   if(ch=='\r')
    continue;
   //遇到换行符就要将本行读取到的所有字符全部返回
   if(ch=='\n')
    return sb.toString();
   else
    sb.append((char)ch);
  }
  if(sb.length()!=0)
   return sb.toString();
  return null;
 }
 
 public void myClose() throws IOException{
  r.close();
 }
 
}
class demo{
 public static void main(String args[]) throws IOException{
  //实验前先建立一个文档用于读取其中的字符串
  FileReader fr=new FileReader("123.txt");
  MyReaderLine mr=new MyReaderLine(fr);
  String line=null;
  while((line=mr.myReaderLine())!=null){
   System.out.println(line);
  }
  mr.myClose();
 }
}

分享到:
评论

相关推荐

    有关文件内容的读取 BufferedReader

    一旦`BufferedReader`对象被创建,就可以调用`readLine()`方法来逐行读取文件内容。`readLine()`方法会读取一行文本,并返回该行的字符串表示,直到遇到换行符为止。如果到达文件末尾,则返回`null`。在给定的代码中...

    java代码-BufferedReader()总的readLine()函数,注意不需要强制类型转换读取值,用比较字符转函数equals();判断取值是否符合结束条件。

    在给定的标题和描述中,重点提到了`BufferedReader`的`readLine()`方法,以及如何使用它来读取和处理数据,而无需进行强制类型转换,并利用`equals()`函数进行字符串比较。 `BufferedReader`类是`java.io`包的一...

    AppScan Source测试ExploitMe Mobile Android Labs项目.docx

    其中一个常见的安全问题是在处理用户输入时未正确限制读取长度,如在使用`BufferedReader.readLine()`方法时。这个方法会一直读取输入直到遇到行结束符,如`\n`, `\r`, 或者`\r\n`。如果输入流中没有这些终止符,...

    编写程序,该程序实现打开一个文本文件,每次读取一行内容,将每行作为一个字符串读入,并将字符串输出显示到屏幕上。

    `readLine()`方法被用于从文件中逐行读取内容。只要文件还有内容,`readLine()`就会返回每一行,直到文件末尾,此时它会返回`null`。我们在循环中检查这个返回值,如果非空,则打印出这一行内容。 最后,我们使用`...

    java编写网址源码查看器

    2. **读取源码**: 通过`BufferedReader`的`readLine()`方法逐行读取网页源码。 ```java StringBuilder sourceCode = new StringBuilder(); String line; while ((line = buffer.readLine()) != null) { sourceCode...

    JAVA语言中read方法分析

    使用`BufferedReader`类的`readLine()`方法可以更好地处理键盘输入。这种方法可以读取一整行输入,并且自动处理换行符,使得程序更加健壮。 ```java BufferedReader reader = new BufferedReader(new ...

    javaIO流实现永久化查询添加学生信息-java-BufferedReader

    我们将重点讲解`BufferedReader`类在这一过程中的作用。 首先,了解Java IO流的基本分类。Java IO流分为字符流和字节流,其中`BufferedReader`属于字符流的一部分,主要用于读取字符数据,如文本文件。它的主要优点...

    Java编程题目及答案.pdf

    - 从控制台读取输入,通过BufferedReader的readLine()方法读取一行输入。 3. Java Applet: - Applet的基本概念,Java中用于编写小程序的类。 - Graphics类的使用,用于在Applet中绘制图形和文字。 - Applet的...

    JAVA填空题标准标准答案-(103题).docx

    知识点:Java中的输入输出流、BufferedReader类、readLine()方法。 4. 线程类型中的yield()方法只能让相同优先级或者更高优先级、处于就绪状态的线程获得运行机会。 答案:就绪 知识点:Java中的线程、yield()...

    西农java实习五-文件操作.docx

    BufferedWriter的write方法用于写入字符或字符串,而BufferedReader的readLine方法则用于读取文本文件的一行内容。 接下来是实验题2,这个任务是统计“.\files\input.txt”文件中的大写字母和小写字母数量,并将...

    java编写一个本地搜索程序

    - 通过调用 `listRoots()` 方法获取系统中的所有根目录(如 C:\, D:\ 等)。 - `listFiles()` 方法用于列出指定目录下的所有子文件和子目录。 3. **递归算法**: - 递归搜索是该程序的核心算法之一。 - 在 `...

    利用JAVA文件读写流编写的学生点名系统

    每个学生的姓名可能存储为单独的行,因此可以使用`readLine()`方法逐行读取。 2. **添加学生**:当有新学生加入时,系统应能将新姓名追加到现有的学生名单文件中。这可以通过`BufferedWriter.newLine()`方法实现,...

    JAVA读取文件——以行为单位读取

    总的来说,Java中以行为单位读取TXT文件是通过组合使用`FileReader`、`BufferedReader`和`readLine()`方法实现的。这种方式既简单又高效,适用于大多数文本处理需求。在实际项目中,你可以根据需要扩展这个基础示例...

    Java中控制台的输入与输出.pdf

    `BufferedReader`使用内部缓冲区来提高读取效率,它可以一次性读取一行文本(通过`readLine()`方法),而不是字符一个一个地读取,从而提高了性能。 另一方面,控制台的输出通常使用`PrintWriter`类,它提供了方便...

    读取csv文件中指定行列的数据

    在Eclipse中,你可以创建一个新的Java项目,将CSV文件放入项目的资源目录下,然后编写上述代码进行测试。记得在运行前检查CSV文件的编码格式,确保与Java程序的编码设置一致,以防止乱码问题。 通过这种方式,你...

    java的数据输入:从控制台输入数据分享.pdf

    - 如果需要读取整行输入,BufferedReader的readLine()方法更为适用;而Scanner类更适合处理连续的多个值,因为它可以逐个读取不同类型的数据。 总的来说,Java提供了多种从控制台获取数据的方法,根据具体需求选择...

    面试题:把a.txt、b.txt文件合并写到c.txt文件

    这是一个典型的文件读取、合并以及写入的操作,涉及到Java中的File类、BufferedReader和PrintWriter等核心组件。 首先,我们需要创建File对象来表示文件路径。在Java中,可以使用File类的构造函数来创建一个表示...

    java输入的两个方法.docx

    `BufferedReader` 类提供了 `readLine()` 方法,该方法用于读取一行数据,直到遇到换行符或文件结尾: ```java String str = buf.readLine(); ``` **示例程序** 下面是一个完整的示例程序,演示如何使用 `...

    从键盘敲入一系列字母,将其存储到文件中,

    - 使用`BufferedReader`的`readLine()`方法读取一行文本。如果用户输入了多个单词或者字符,它们会被视为一个整体。 ```java BufferedReader inputStream = new BufferedReader(new InputStreamReader(System.in));...

Global site tag (gtag.js) - Google Analytics