下面是“Java读写文件,在文件中搜索内容,并输出含有该内容的所有行方式”的完整攻略:
读取文件
Java提供了多种读取文件的方式,其中比较常用的是使用FileInputStream或者BufferedReader类进行文件读取。
下面是使用BufferedReader读取文件的示例代码:
try (BufferedReader reader = new BufferedReader(new FileReader("test.txt"))) {
String line;
while ((line = reader.readLine()) != null) {
// 对每一行进行处理
}
} catch (IOException e) {
// 异常处理
}
在该示例中,我们使用BufferedReader类读取了文件“test.txt”的内容,并逐行进行处理。通过while循环,我们可以在每行读取时进行处理。
文件中搜索内容
搜索文件内容通常需要用到文件流的方式进行搜索,查找包含内容的行时可以使用String.indexOf()方法进行搜索,找到了就输出该行的内容,否则就跳过该行。
下面是使用FileReader和BufferedReader搜索文件内容的示例代码:
try(BufferedReader reader = new BufferedReader(new FileReader("test.txt"))){
String line;
while((line = reader.readLine())!=null){
if(line.indexOf("hello")!=-1){
System.out.println(line);
}
}
}catch(IOException e){
// 异常处理
}
在该示例中,我们利用BufferedReader按行读取文件内容,通过String对象的indexOf()方法查找是否包含我们需要的内容,如果包含则输出当前行的内容。
完整示例
下面是一个完整的示例,演示如何读取文件、在文件中搜索需要的内容并输出所需的内容:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class SearchFileDemo {
public static void main(String[] args) {
try (BufferedReader reader = new BufferedReader(new FileReader("test.txt"))) {
String line;
while ((line = reader.readLine()) != null) {
if (line.indexOf("hello") != -1) {
System.out.println(line);
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
在该示例中,我们使用了try-with-resource的方式来关闭文件流,使用BufferedReader类实现按行读取文件内容。 当读取到包含“hello”的行时,就会输出该行的内容。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java读写文件,在文件中搜索内容,并输出含有该内容的所有行方式 - Python技术站