java用bufferedreader连续读取行
时间: 2023-07-18 10:34:19 浏览: 90
可以使用以下代码来实现Java中使用BufferedReader连续读取行:
```java
try {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
```
在上面的代码中,我们使用BufferedReader从标准输入流(System.in)中读取每一行输入,并将其输出到控制台。while循环会一直执行,直到读取到了null,即输入流结束。注意,这里使用了try-catch语句来处理IOException异常。
相关问题
java逐行读取TXT文件清除所以空格和换行并判断如果等于一个字符串就连续读取两行
可以使用Java的BufferedReader类逐行读取TXT文件,并使用String类的trim()方法去除前后空格和replaceAll()方法去除所有空格和换行符。在读取每行内容时,可以使用String类的equals()方法判断是否与指定字符串相等,如果相等,则可以连续读取两行。
下面是一个示例代码:
```java
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class ReadFileLineByLine {
public static void main(String[] args) {
String fileName = "file.txt";
try (BufferedReader br = new BufferedReader(new FileReader(fileName))) {
String line;
String prevLine = "";
while ((line = br.readLine()) != null) {
line = line.trim().replaceAll("\\s+", ""); // 去除前后空格和所有空格和换行符
if (line.equals("targetString")) { // 判断是否与指定字符串相等
System.out.println(prevLine + line); // 输出连续两行的内容
}
prevLine = line;
}
} catch (IOException e) {
System.err.format("IOException: %s%n", e);
}
}
}
```
在这个示例中,我们使用了try-with-resources语法来确保在读取完文件后,文件流会被自动关闭。我们创建了一个BufferedReader对象,并将其包装在一个FileReader中,从而实现了逐行读取TXT文件。在while循环中,我们使用trim()方法去除前后空格,使用replaceAll()方法去除所有空格和换行符,并将其赋值给line变量。然后,使用equals()方法判断line是否与指定字符串相等,如果相等,则输出prevLine和line的内容。最后,将line赋值给prevLine,以备下一次循环使用。
java逐行读取文件并将多个连续的换行符替换成一个换行符
可以使用Java中的BufferedReader类逐行读取文件并使用正则表达式将多个连续的换行符替换成一个换行符。
以下是示例代码:
```java
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class Main {
public static void main(String[] args) {
try {
BufferedReader reader = new BufferedReader(new FileReader("file.txt"));
String line = reader.readLine();
while (line != null) {
// 将多个连续的换行符替换成一个换行符
String newLine = line.replaceAll("(\\r\\n){2,}", "\r\n");
System.out.println(newLine);
line = reader.readLine();
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
在上述代码中,使用BufferedReader逐行读取文件内容,并使用String的replaceAll方法将多个连续的换行符替换成一个换行符。最后输出替换后的内容。
阅读全文