public ArrayList<Disciplina> Disciplinas() throws FileNotFoundException {

        try {
            Scanner fi = new Scanner(new File("src/Ficheiros/disciplinas.txt"));
            Scanner ji = new Scanner(new File("src/Ficheiros/disciplinas.txt"));
            String bb = fi.nextLine();
            String bbb = ji.nextLine();
// leitura de ficheiro linha-a-linha
            String[] c;
            int t = -1;
            do {

                ArrayList<Professor> y = new ArrayList<Professor>();
                String b = fi.nextLine();
                c = b.split(";");

                int i = 5;
                do {
                    int j = 0;
                    do {
                        String o = getProfessor().get(j).getSigla();
                        if (c[i].equalsIgnoreCase(o)) {
                            y.add(getProfessor().get(j));
//                        x2.get(j).getListaDisciplinas().add(x4.get(t));
                        }
                        j++;
                    } while (getProfessor().size() > j);
                    i++;
                } while (i < c.length);
//            System.out.println(c[1]);
                Disciplina a = new Disciplina(c[0], c[1], Integer.parseInt(c[2]), Integer.parseInt(c[3]), c[4], y);
                getDisciplina().add(a);
            } while (fi.hasNextLine());

            do {
                String b = ji.nextLine();
                t++;
                c = b.split(";");

                int i = 5;
                do {
                    int j = 0;
                    do {
                        String o = getProfessor().get(j).getSigla();
                        if (c[i].equalsIgnoreCase(o)) {
                            getProfessor().get(j).getListaDisciplinas().add(getDisciplina().get(t));
                        }
                        j++;
                    } while (getProfessor().size() > j);
                    i++;
                } while (i < c.length);
            } while (ji.hasNextLine());
            //System.out.println(professor.get(2).toStringProfessor());
        } catch (FileNotFoundException e) {
//            System.out.println("Ficheiro basico de disciplinas não encontrado.");
//            JOptionPane.showMessageDialog(null, "Ficheiro basico das disciplinas não encontrado.");
            fiDisciplina = false;
            ghjk = false;
        }
        return getDisciplina();
    }