如何从文件中获取输入并在Java中搜索该输入?

时间:2020-11-06 18:40:08

标签: java input file-io

我是stackoverflow和编程的新手,我是高中生,请您帮忙。 Here is the question

此问题中使用的数据文件具有以下数据

ID:Name:Final 
18273640:Annette Adams:98
93840219:Mary Beard:87 
23958552:Antoinette Brown:79 
23958231:Claribel Cone:78 
23958548:Ema Chang:69 
23958664:Heesook Kim:98 
23958115:Larry Liu:98 
23958238:Brad Lee:53 
18273165:Eric Ko:95 
18273239:Richard Ko:96 
18273475:Shawn Tornton:98 
18273427:Omar Maghardi:78 
18273975:Scott Yau:59 
18273231:Glenn Ikonomov:86 
92839115:Scott Trouchon:69 
92839985:Patric Zhou:88 
92839344:Zhanfang Li:82 
92839342:Robert Bloomingdale:91 
92839633:Patricia Garibaldi:59 
92839654:Svetlana Rusova:48 
92839443:Aleksei Titov:99 
92839864:Xiaowei Young:96 
92839428:Guan Wang:46

有人可以帮我吗?

1 个答案:

答案 0 :(得分:1)

虽然这不是回答作业问题的论坛,但我可以为您提供一些指导,以帮助您入门:

程序需要执行的操作

要允许用户搜索文件,您的程序必须能够:

  1. 阅读用户输入
  2. 读取文本文件
  3. (可选)将文本文件中的数据加载到易于搜索的数据结构中
  4. 搜索文本文件的内容(或您的数据结构)以获取学生的信息

阅读用户的输入

这将回答:How to get the user input in Java?

阅读文本文件

这将回答:Reading a plain text file in Java

(可选)将数据加载到数据结构中

这是可选的,但它将使下一步变得更容易。本质上,您需要将文件中的字符串数据解析为数据结构。

执行此操作的一种方法是使用字段StudentString name;String id;创建一个名为Integer score;的类。然后将所有学生存储在List<Student>HashMap<String, Student>之类的列表中,其中的键是一个ID

注意,例如,您可以调用"92839428:Guan Wang:46".split(":")来分隔每行上的不同组件

搜索学生

如果您创建如上所述的数据结构,则只需找到与用户输入匹配的Student对象