RMI - Recebendo dados de um arquivo

0 respostas
muniquewassem

Olá!

Como parece que quanto mais estudo, mais vejo que não entendo de java, estou aqui de novo.

Estou tentando desenvolver uma aplicação que faz o seguinte: No lado do cliente, pega dois arquivos .cvs com dados de uma matriz em cada, através de uma interface gráfica, arruma os dados e os passa como parâmetro para o Servidor, que vai fazer a multiplicação entre as matrizes e retornar ao cliente a matriz resultante dessa multiplicação.

Estou tendo mais problema do que posso contar, mas o que tá me travando agora é que não consigo 'carregar' o arquivo, pra ler os dados no cliente, a sida é java.io.IOException: Stream not marked. Estou tentando pegar o arquivo com um JFileChooser. Para o cliente, tendo o seguinte código:
public void lerArquivo1() throws FileNotFoundException, IOException, RemoteException {
        JFileChooser escolha = new JFileChooser();

        // Selecionar apenas arquivos
        escolha.setFileSelectionMode(JFileChooser.FILES_ONLY);

        // Abrindo o seletor e recolhendo o resultado da operação
        int operação = escolha.showOpenDialog(null);

        // Operação inválida, sair!
        if (operação != JFileChooser.APPROVE_OPTION) {
            System.out.println("Selecione um arquivo!");
            System.exit(0);
        }

        // Operação aprovada, recolher arquivo
        File arquivo = escolha.getSelectedFile();
        txtMatrizUm.setText(escolha.getName(arquivo));;
        txtMatrizUm.getText();
        BufferedReader bf = new BufferedReader(new InputStreamReader(new FileInputStream(arquivo)));

        String temp;
        int contLinhas = 0;
        int matriz1[][];

        while ((temp = bf.readLine()) != null) {
            contLinhas++;
        }

        matriz1 = new int[contLinhas][];
        bf.reset();
        for (int i = 0; i < matriz1.length; i++) {
            String linha[] = bf.readLine().split(";");
            matriz1[i] = new int[linha.length];
            for (int j = 0; j < linha.length; j++) {
                matriz1[i][j] = Integer.parseInt(linha[i]);
            }

        }
    }

Eu sei que vou ter mais 465768 problemas com essa aplicação, mas vou começar por esse. Alguém pode me ajudar?

Criado 6 de junho de 2011
Respostas 0
Participantes 1