使用java搜索和打印文本文件
如何搜索文本并从.txt文件打印出特定的文本行? e、 我有一个名为airlines.txt的txt文件,我搜索MMHHHAAAA。然后,我想从行“MMHHHAAAA:马来西亚航空公司”中提取“马来西亚航空公司”使用java搜索和打印文本文件,java,search,text,printing,Java,Search,Text,Printing,如何搜索文本并从.txt文件打印出特定的文本行? e、 我有一个名为airlines.txt的txt文件,我搜索MMHHHAAAA。然后,我想从行“MMHHHAAAA:马来西亚航空公司”中提取“马来西亚航空公司” 您可以使用String.indexOf(“”)方法 if (s.indexOf("your-search-string") != -1) { //matched the pattern System.out.println(s); } 您可以使用substring()在:
您可以使用
String.indexOf(“”)方法
if (s.indexOf("your-search-string") != -1) {
//matched the pattern
System.out.println(s);
}
您可以使用substring()
在:
之后提取零件。
System.out.println(s.substring(“:”)代码>
阅读更多关于它的内容和方法。一种可能性
Scanner scanner = new Scanner(new File("airlines.txt"));
while(scanner.hasNextLine()){
String currentLine = scanner.nextLine();
if(currentLine.indexOf("MMHHHAAAA") != -1){
String airline = currentLine.split(":")[1];
System.out.println("Airline is " + airline);
}
}
您可以在Java 8中使用此选项:
final Path path = Paths.get("airlines.txt");
final Optional<String> theLine;
try (
final Stream<String> lines = Files.lines(path, StandardCharsets.UTF_8)
) {
theLine = lines.filter(s -> s.startsWith("MMHHHAAAA:"))
.findFirst();
}
if (theLine.isPresent())
// do something with theLine.get()
final Path=Path.get(“airlines.txt”);
最终可选线路;
试一试(
最终流行=Files.lines(路径,StandardCharsets.UTF_8)
) {
theLine=lines.filter(s->s.startsWith(“MMHHHAAAA:”)
.findFirst();
}
if(line.isPresent())
//用这条线做点什么
缺少如何提取“:”后面的字符串部分。
final Path path = Paths.get("airlines.txt");
final Optional<String> theLine;
try (
final Stream<String> lines = Files.lines(path, StandardCharsets.UTF_8)
) {
theLine = lines.filter(s -> s.startsWith("MMHHHAAAA:"))
.findFirst();
}
if (theLine.isPresent())
// do something with theLine.get()