Comparação vetores e arquivo txt

0 respostas
F

Pessoal é o seguinte, eu tenho um projeto para uma disciplina em que tenho que comparar um vetor de entrada do usuário com um vetor que está em um arquivo .txt. Esse vetor que o usuário insere é de Strings e tenho que comparar as entradas dele com algumas posições do vetor que está num .txt, esse vetor de entrada são as disciplinas já cursadas na faculdade, e a partir delas tenho que ver se as disciplinas cursadas são requisitos das disciplinas que vem depois e mostrar ao usuario quais disciplinas ele pode fazer por ter cursado as disciplinas anteriores, aqui vai um exemplo:

package arquivosdisciplinas;

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.Scanner;

public class ArquivosDisciplinas {
    
    static String[] Energia = new String[4];
    static String[] Representacao_e_Simulacao = new String[6];
    static String[] Estrutura_da_Materia = new String[4];
    static String[] Processos_de_Transformacao = new String[4];
    static String[] Informacao_e_Comunicacao = new String[4];
    static String[] Humanidades = new String[3];
    static String[] Projeto = new String[1];
    static String[] Sem_Requisito = new String[7];

   
    static void leitura(String nomeArq) {
        try {// tenta ler o arquivo
            FileReader ent = new FileReader(nomeArq); // associa variável ao arquivo
            BufferedReader br = new BufferedReader(ent);// abre arquivo para leitura
            String linha;
            String[] campos = null;
            System.out.println("===Disciplinas do Eixo de Energia: ===");
            while ((linha = br.readLine()) != null) {
                campos = linha.split(":");//quebra dados separados por ":"
                String Energia = campos[0];
                int creditos = Integer.parseInt(campos[1]);
                String req1 = campos[2];
                String req2 = campos[3];
                String req3 = campos[4];
                System.out.print(Energia + " " + creditos + " créditos \n");
            }
            br.close();//fecha o arquivo
        } catch (IOException erro) {//não conseguiu ler o arquivo
            System.out.println("Erro na leitura do arquivo!");
        }
    }


    static void leitura2(String nomeArq) {
        try {// tenta ler o arquivo
            FileReader ent = new FileReader(nomeArq); // associa variável ao arquivo
            BufferedReader br = new BufferedReader(ent);// abre arquivo para leitura
            String linha;
            String[] campos = null;
            System.out.println("\n===Disciplinas de Representacao e Simulacao: ===");
            while ((linha = br.readLine()) != null) {
                campos = linha.split(":");//quebra dados separados por ":"
                String Representacao_e_Simulacao = campos[0];
                int creditos = Integer.parseInt(campos[1]);
                String req1 = campos[2];
                String req2 = campos[3];
                System.out.print(Representacao_e_Simulacao + " " + creditos + " créditos \n");
            }
            br.close();//fecha o arquivo
        } catch (IOException erro) {//não conseguiu ler o arquivo
            System.out.println("Erro na leitura do arquivo!");
        }
    }

    static void leitura3(String nomeArq) {
        try {// tenta ler o arquivo
            FileReader ent = new FileReader(nomeArq); // associa variável ao arquivo
            BufferedReader br = new BufferedReader(ent);// abre arquivo para leitura
            String linha;
            String[] campos = null;
            System.out.println("\n===Disciplinas de Estrutura da Matéria: ===");
            while ((linha = br.readLine()) != null) {
                campos = linha.split(":");//quebra dados separados por ":"
                String Estrutura_da_Materia = campos[0];
                int creditos = Integer.parseInt(campos[1]);
                String req1 = campos[2];
                String req2 = campos[3];
                System.out.print(Estrutura_da_Materia + " " + creditos + " créditos \n");
            }
            br.close();//fecha o arquivo
        } catch (IOException erro) {//não conseguiu ler o arquivo
            System.out.println("Erro na leitura do arquivo!");
        }
    }

    static void leitura4(String nomeArq) {
        try {// tenta ler o arquivo
            FileReader ent = new FileReader(nomeArq); // associa variável ao arquivo
            BufferedReader br = new BufferedReader(ent);// abre arquivo para leitura
            String linha;
            String[] campos = null;
            System.out.println("\n===Disciplinas de Processo de Transformações: ===");
            while ((linha = br.readLine()) != null) {
                campos = linha.split(":");//quebra dados separados por ":"
                String Processos_de_Transformacao = campos[0];
                int creditos = Integer.parseInt(campos[1]);
                String req1 = campos[2];
                System.out.print(Processos_de_Transformacao + " " + creditos + " créditos \n");
            }
            br.close();//fecha o arquivo
        } catch (IOException erro) {//não conseguiu ler o arquivo
            System.out.println("Erro na leitura do arquivo!");
        }
    }

    static void leitura5(String nomeArq) {
        try {// tenta ler o arquivo
            FileReader ent = new FileReader(nomeArq); // associa variável ao arquivo
            BufferedReader br = new BufferedReader(ent);// abre arquivo para leitura
            String linha;
            String[] campos = null;
            System.out.println("\n===Disciplinas de Informação e Comunicação: ===");
            while ((linha = br.readLine()) != null) {
                campos = linha.split(":");//quebra dados separados por ":"
                String Informacao_e_Comunicacao = campos[0];
                int creditos = Integer.parseInt(campos[1]);
                String req1 = campos[2];
                System.out.print(Informacao_e_Comunicacao + " " + creditos + " créditos \n");
            }
            br.close();//fecha o arquivo
        } catch (IOException erro) {//não conseguiu ler o arquivo
            System.out.println("Erro na leitura do arquivo!");
        }
    }

    static void leitura6(String nomeArq) {
        try {// tenta ler o arquivo
            FileReader ent = new FileReader(nomeArq); // associa variável ao arquivo
            BufferedReader br = new BufferedReader(ent);// abre arquivo para leitura
            String linha;
            String[] campos = null;
            System.out.println("\n===Disciplinas de Humanidades: ===");
            while ((linha = br.readLine()) != null) {
                campos = linha.split(":");//quebra dados separados por ":"
                String Humanidades = campos[0];
                int creditos = Integer.parseInt(campos[1]);
                String requisitos = campos[2];
                System.out.print(Humanidades + " " + creditos + " créditos \n");
            }
            br.close();//fecha o arquivo
        } catch (IOException erro) {//não conseguiu ler o arquivo
            System.out.println("Erro na leitura do arquivo!");
        }
    }

    static void leitura7(String nomeArq) {
        try {// tenta ler o arquivo
            FileReader ent = new FileReader(nomeArq); // associa variável ao arquivo
            BufferedReader br = new BufferedReader(ent);// abre arquivo para leitura
            String linha;
            String[] campos = null;
            System.out.println("\n===Disciplina de Projeto: ===");
            while ((linha = br.readLine()) != null) {
                campos = linha.split(":");//quebra dados separados por ":"
                String Projeto = campos[0];
                int creditos = Integer.parseInt(campos[1]);
                System.out.print(Projeto + " " + creditos + " créditos \n");
            }
            br.close();//fecha o arquivo
        } catch (IOException erro) {//não conseguiu ler o arquivo
            System.out.println("Erro na leitura do arquivo!");
        }
    }

    static void leitura8(String nomeArq) {
        try {// tenta ler o arquivo
            FileReader ent = new FileReader(nomeArq); // associa variável ao arquivo
            BufferedReader br = new BufferedReader(ent);// abre arquivo para leitura
            String linha;
            String[] campos = null;
            System.out.println("\n===Disciplinas sem requisitos: ===");
            while ((linha = br.readLine()) != null) {
                campos = linha.split(":");//quebra dados separados por ":"
                String Sem_Requisito = campos[0];
                int creditos = Integer.parseInt(campos[1]);
                System.out.print(Sem_Requisito + " " + creditos + " créditos \n");
            }
            br.close();//fecha o arquivo
        } catch (IOException erro) {//não conseguiu ler o arquivo
            System.out.println("Erro na leitura do arquivo!");
        }
    }

    public static void main(String[] args) {
        
        leitura("Energia.txt");
        leitura2("Representacao_e_Simulacao.txt");
        leitura3("Estrutura_da_Materia.txt");
        leitura4("Processos_de_Transformacao.txt");
        leitura5("Informacao_e_Comunicacao.txt");
        leitura6("Humanidades.txt");
        leitura7("Projeto.txt");
        leitura8("Sem_Requisito.txt");
    }
}

esse é meu código, e por exemplo, um dos arquivos .txt tem essa estrutura:

BC0003 (BM):4:SEM:SEM
BC0402 (FUV):4:BC0003:SEM
BC0404 (GA):3:BC0003:SEM
BC0407 (FVV):4:BC0402:BC0404
BC0405 (IEDO):4:BC0407:SEM
BC0406 (IPE):3:BC0402:SEM

então o que eu quero fazer é comparar um vetor que vou pedir ao usuário e se ele tiver feito, por exemplo, BC0003 mostrar pra ele que ele pode fazer BC0402 e BC0404. Valeu.

Criado 12 de abril de 2015
Respostas 0
Participantes 1