我应该读取包含电影/系列列表的文本文件,并且对于文本文件的每一行,我必须创建一个新的Media对象(电影或系列作为子类)。我已经创建了一个方法来读取文本文件并为每一行创建一个对象数组。但我的问题是如何从文本文件中的文本中取出单词并将它们转换为我创建的新对象的实例变量。
Media Class和子类的构造函数和变量如下:
// Media Class Variable and constructor
protected String genre;
protected String year;
protected float rating;
protected String Title;
public Media(String genre, String year, float rating, String title) {
this.genre = genre;
this.year = year;
this.rating = rating;
Title = title;
// Movie subclass constructor and variables
private int lengthHr;
private int lengthMin;
public Movie(String genre, String year, float rating, String title,int lengthH,int lengthM) {
super(genre, year, rating, title);
}
以下是我阅读文件的方式。
// Reads file line by line and increments line count to create a new array of media object.. probably wrong.
public List<String> readFile() throws Exception{
String line;
int numLines=0;
List<String> lines = new ArrayList<String>();
BufferedReader br = new BufferedReader(new FileReader(path));
while((line=br.readLine())!=null){
lines.add(line);
numLines++;
}
br.close();
Media[] media = new Media[numLines];
return lines;
}
基于文本文件中的这些行:
开始文字:
[!女性艺术革命(2010)| 3星,1小时22分
1啦啦队营(2010)| 3星,1小时35分
每天5美元(2008年)| 3.4星,1小时37分 晚上,母亲(1986)| 3.7星,1小时36分'Til Death(2006-2009)| 3.7星,4季]
结束文字:
我该如何告诉我的媒体对象数组 说拿这个文字把它变成说:这个。
Media[0] = new Movie("Movie","2010",3.0,"Woman Art Revolution",1,22);
首先想到的是分裂,但我不确定处理它的最佳方法,请原谅缺乏更高质量的例子...我没有做很多工作然而。任何有用的建议都会帮助我很快完成这个项目。谢谢。
请注意,此示例之外还有更多文本行,如果您能想到创建这些对象的更快捷方式,也会受到赞赏。