将具有不同数据类型的文件读入树中

时间:2015-05-06 03:18:18

标签: java file-io

我有一个对象Movie,其中包含以下数据成员:title(字符串),year(int)和actor列表(ArrayList)。我想从文件中读取并使用文件中的信息创建一个新的Movie对象。这是文件中的示例文本:

Star Wars/1977/Mark Hamill,Carrie Fisher,Harrison Ford

如何将文件添加到树中以满足构造函数的条件:

public class Movie {
private String title;
private int year;
private ArrayList<String> actors;

public Movie( String t, int y, ArrayList<String> a ){
    title = t;
    year = y;
    actors = a;
}

我是如何尝试添加文件的(我知道如果所有内容都是String类型的话它会起作用):

try{
        Scanner read = new Scanner( new File("movies.txt") );
        do{
            String line = read.nextLine();
            String [] tokens = line.split("/");
            //How would I change this to allow for differnt data types.
            tree.add( new Movie(tokens[0], tokens[1], tokens[2] );
        }while( read.hasNext() );
        read.close();
    }catch( FileNotFoundException fnf){
        System.out.println("File not found.");
    }

我想我需要在这里创建ArrayList以及int

2 个答案:

答案 0 :(得分:1)

转换类型。 1)使用int &a=(int*)malloc(sizeof(int);

将标记[1]转换为整数

2)对于数组列表再次通过“,”将标记[2]溢出并添加到arraylist中。使用Integer.parseIt(tokens[1]);添加arraylist中的值。

3)使用string int和arraylist变量调用构造函数。

答案 1 :(得分:0)

您的问题不明确,但如果我能正确理解您,可以通过任何方式添加此问题

 tree.add( new Movie(tokens[0], Integer. Integer.parseInt(tokens[1]),Arrays.asList(tokens[2].split(",") );