public static List<Movie> readData(String filename) {
		Map<String, Integer> map = getMovieType();
		File file = new File(filename);
		List<Movie> list = new ArrayList<Movie>();
		try {
			FileReader fr = new FileReader(file);
			BufferedReader br = new BufferedReader(fr);
			String line = null;
			String[] strs = null;
			while ((line = br.readLine()) != null && !"".equals(line)) {
				strs = line.split("::");
				Movie m = new Movie();
				m.setId(strs[0]);
				if (!"(".equals(strs[2].charAt(0) + "")) {
					String[] moviesTypes = strs[2].split("\\|");
					for (String str : moviesTypes) {
						try {
							m.getType()[map.get(str.trim())] = 1;
						} catch (NullPointerException e) {
							e.printStackTrace();
						}
					}
				}
				list.add(m);
			}
		} catch (IOException e) {
			e.printStackTrace();
		}
		return list;
	}