private List<Opdracht> leesOpdrachtenVanBestand() {
		File file = new File("bestanden/opdrachten");
		List<Opdracht> list = new ArrayList<Opdracht>();
		if (file.exists()) {
			try {
				Scanner scanner = new Scanner(file);
				while (scanner.hasNext()) {
					String lijn = scanner.nextLine();
					String[] velden = lijn.split(",");
					int id = Integer.parseInt(velden[0]);
					String vraag = velden[1];
					String antwoord = velden[2];
					int maxAantalPogingen = Integer.parseInt(velden[3]);
					String antwoordHint = velden[4];
					int maxAntwoordTijd = Integer.parseInt(velden[5]);
					String soortOpdracht = velden[6];
					String opdrachtCategorieString = velden[7];
					OpdrachtCategorie opdrachtCategorie = OpdrachtCategorie
							.valueOf(opdrachtCategorieString);
					Opdracht opdracht = null;
					if (soortOpdracht.equals("Meerkeuze")) {
						String alleKeuzes = velden[8];
						opdracht = new Meerkeuze(vraag, antwoord,
								maxAantalPogingen, alleKeuzes, antwoordHint,
								maxAntwoordTijd, opdrachtCategorie);
						opdracht.setId(id);
					} else if (soortOpdracht.equals("Reproductie")) {
						String trefwoorden = velden[8];
						int minAantalJuisteTrefwoorden = Integer
								.parseInt(velden[9]);
						opdracht = new Reproductie(vraag, antwoordHint,
								maxAantalPogingen, antwoordHint,
								maxAntwoordTijd, trefwoorden,
								minAantalJuisteTrefwoorden, opdrachtCategorie);
					} else if (soortOpdracht.equals("Opsomming")) {
						opdracht = new Opsomming(vraag, antwoord,
								maxAantalPogingen, antwoordHint,
								maxAntwoordTijd, opdrachtCategorie);
					}
					list.add(opdracht);
				}
				if (scanner != null) {
					scanner.close();
				}
			} catch (FileNotFoundException ex) {
				System.out.println("bestand niet gevonden");
			} catch (NullPointerException ex) {
				System.out.println(ex.getMessage());
			} catch (Exception ex) {
				System.out.println("here");
				System.out.println(ex.getMessage());
			}
		}
		return list;
	}