例如,我要在.txt文件中保存联系人详细信息,然后保存,我只想输入名称来查看此人的联系方式。
例如,如果我有一个包含这些字符串的.txt文件,
姓名:Shiroe
联系电话:1234567890
姓名:Kirito
联系电话:0987654321
我进入" Shiroe"作为要查看的联系人姓名。我的预期输出是,
姓名:Shiroe
联系电话:1234567890
所以,底线,是否可以读取字符串下面的字符串(阅读" Shiroe" /"名称:Shiro"首先然后读取下面/后面的行&# 34; Shiroe")用作输出?或者我问错了问题?
答案 0 :(得分:1)
你可以做这样的事情......如果没有显示你的任何代码,很难模拟一个正确的片段,但逻辑应该适用......
try(BufferedReader br = new BufferedReader(new FileReader("yourFile.txt"))) {
StringBuilder builder = new StringBuilder();
String line = br.readLine();
Boolean needNextLine = false;
while (line != null) {
if (needNextLine) {
sb.append(line)
needNextLine = false;
sb.append(System.lineSeparator());
}
if (line.contains("Shiroe")) { // hardcoded
sb.append(line);
needNextLine = true;
sb.append(System.lineSeparator());
}
line = br.readLine();
}
String toBeReturned = sb.toString();
}
答案 1 :(得分:0)
很有可能
int startPos = text.indexOf("Name:Shiroe");
int endPos = text.indexOf("Name",startPos);
String details = text.subString(startPos,endPos);