Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何从txt文件中提取文本并将其转换为对象的实例变量?_Java_Arrays_Methods_Project_Instance Variables - Fatal编程技术网

Java 如何从txt文件中提取文本并将其转换为对象的实例变量?

Java 如何从txt文件中提取文本并将其转换为对象的实例变量?,java,arrays,methods,project,instance-variables,Java,Arrays,Methods,Project,Instance Variables,我应该读取一个包含电影/系列列表的文本文件,对于文本文件的每一行,我必须创建一个新的媒体对象(电影或系列作为子类)。我已经创建了一个读取文本文件并为每行创建对象数组的方法。但我的问题是如何从文本文件中的文本中提取单词,并将它们转换为我创建的新对象的实例变量 媒体类和子类的构造函数和变量如下所示: // Media Class Variable and constructor protected String genre; protected String year; pr

我应该读取一个包含电影/系列列表的文本文件,对于文本文件的每一行,我必须创建一个新的媒体对象(电影或系列作为子类)。我已经创建了一个读取文本文件并为每行创建对象数组的方法。但我的问题是如何从文本文件中的文本中提取单词,并将它们转换为我创建的新对象的实例变量

媒体类和子类的构造函数和变量如下所示:

// 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;
}
首先想到的是分裂,但我不确定最好的处理方法,请原谅缺乏更高质量的例子。。。我还没有在这方面做很多工作。任何有帮助的建议都会帮助我更快地完成这个项目,谢谢


请注意,除了此示例之外,还有更多的文本行,如果您能想出一种更快的方法来创建这些对象,我们将不胜感激。

什么语言?它应该是其中一个标签。很抱歉,我刚刚注册了这个网站,语言是Java,我相应地更新了标签。欢迎使用Stack Overflow。我以为这是Java,但某种点网络语言看起来也是可能的。阅读文本,解析它,然后将数据提供给
电影
类。问题的具体部分是什么?每行都遵循相同的模式:标题,括号之间的年份,后面是分隔符,后面是评级,后面是星号,最后是持续时间。所以,使用String的indexOf、substring()和lastIndexOf()方法,您可以轻松实现解析算法。什么语言?它应该是其中一个标签。很抱歉,我刚刚注册了这个网站,语言是Java,我相应地更新了标签。欢迎使用Stack Overflow。我以为这是Java,但某种点网络语言看起来也是可能的。阅读文本,解析它,然后将数据提供给
电影
类。问题的具体部分是什么?每行都遵循相同的模式:标题,括号之间的年份,后面是分隔符,后面是评级,后面是星号,最后是持续时间。因此,使用String的indexOf、substring()和lastIndexOf()方法,您可以轻松实现解析算法。
Media[0] = new Movie("Movie","2010",3.0,"Woman Art Revolution",1,22);