从文本文件中的行创建 object

Create object from line in textfile

我对在 java 中创建 object 有疑问。我是新手,我只是在做事情,然后我希望它能起作用,但不幸的是,它没有起作用。我必须从文本文件中的行创建 objects。我有一个和平的代码来打印单独的行,这已经花了我很长时间,尽管它实际上并不那么难,但现在我被卡住了。我有 5 行,每行包含电视节目的名称、开始时间、结束时间、字幕等。我怎样才能将这些行分成不同的 objects? Objects 像program1, program2, program3, object里面的标题和副标题和时间(我把它们放在代码里了,我知道不对,就是不知道怎么弄才对).你必须创建一个构造函数吗? (我想你知道,但是你在括号里放了什么?)很多问题,我知道,哈哈 :) 这就是我现在所拥有的(它打印了线条,但我尝试了一些带有数组的东西,让数组中的行分开(第 1 行,第 2、3、4、5 行),但这也不起作用..:

public class split {

public static void main(String[] args) throws IOException {




 File file = new File("/Users/-/Documents/workspace/opdracht 2/program");
 Scanner scr = new Scanner(file);
 while (scr.hasNextLine()) {
     String line = scr.nextLine();
     String[] array = line.split("\n");
     System.out.println(array);


     }
 split programma1 = new split(String);
 split programma2 = new split(String);
 split programma3 = new split(String);
 split programma4 = new split(String);
 split programma5 = new split(String);
}

 }

谢谢!

建议:

  • 最重要的是,尝试将大问题分成小步骤,然后尝试解决每个步骤,一次一个,必要时单独解决。这是你应该总是为大型或复杂项目做的事情,或者当你用编程做一些你还不熟悉的新事情时。
  • 首先要做的事情之一:创建 class 的字段,包括任何字符串、整数或其他所需的字段。使它们成为非静态的,如果它们是私有的则最好。
  • 这些字段将包括电视节目名称的字符串字段,也许还有开始和结束时间的日期字段,尽管您可能也希望将它们保留为字符串以保持简单。
  • 下一步,给你的 class 一个接受所有必要字段的体面的构造函数。
  • 接下来在静态 main 方法中,打开文件并在 while 循环中逐行读取文件。通过将每一行打印到屏幕上来测试它是否有效。测试代码生效后删除
  • 接下来,在 while 循环中拆分行(就像您所做的那样)。
  • 接下来创建一个 ArrayList<Split>(注意 class 名称应以大写字母开头)。在 while 循环之前创建这个。
  • 接下来使用String#split(...)方法返回的数组填充Split对象构造函数调用的参数,创建一个Split对象,并将其放入ArrayList<Split>。这一切都在 while 循环的 内完成。

您应该首先尝试创建一个 class,它将具有 title、startTime、endTime 等属性作为实例变量。

您可以使用一个将这些变量作为参数的构造函数,或者您可以使用 setter 方法来独立初始化每个成员。

1) Read the line from the file, which represents a TV show.

2) Create an object of the class mentioned above.

3) Either pass the parameters in the constructor or call setter methods depending on what approach you have chosen.

从你提问的方式来看,我建议你先过一遍Java的基础知识,而不是直接跳过去开始编程。尝试理解这些概念,然后您会发现它们很容易应用。