我有一个文本文件,其中包含以下内容。
Name Sahar Hassan
Age 26
我编写了一个Java代码来查找单词“Name”的位置,它运行正常。我想在“Name”之后输出字符串,即“Sahar Hassan”。
答案 0 :(得分:2)
您可以使用indexOf
并搜索换行符(从Name
索引开始)。像这样:
String str = "Name Sahar Hassan\nAge 26";
int nameIndex = str.indexOf("Name"); // What you say you already have.
int newLineIndex = str.indexOf("\n", nameIndex);
// Extract part after "Name"
String name = str.substring(nameIndex + 5, newLineIndex);
System.out.println(name); // Prints "Sahar Hassan"
答案 1 :(得分:2)
保持简单:
import java.io.*;
import java.util.Scanner;
File file = new File("somefilepath");
Scanner s = new Scanner(file);
String name = null;
while (s.hasNextLine()) {
String line = s.nextLine();
if (line.startsWith("Name"))
name = line.substring(5);
}
// The variable "name" will be the name you seek (or be null if line not found)