Versão atual:

Desenvolver App Manipulação de Arquivos

Olá pessoal, estou com uma dúvidas de como desenvolver um programa com as especificações abaixo:

1) Leitura do arquivo texto e geração do arquivo binário correspondente. (Já resolvido).

2) Criação do índice e gravação em um arquivo e sua recuperação posterior. Busca de dados utilizando o índice. (por matrícula)

3) Ordenação externa para outro arquivo (por matrícula).(Já resolvido)

Dados do arquivo texto: Onde corresponde a - Matricula; Nome; Nota

7366801;Daniel D U Ito;48,4
4391637;Jefferson E G Ferreira;52,5
1000036;Ana L P Gonzaga;73
1000042;Thalles M M Guimaraes;77,9
5715829;Lucas G R Atene;59,9
4147868;Hugo G G Coutinho;61
8653593;Rosa E E França;77,3
6023718;Luiz P W Pettersen;68,8
2413323;Diogo G R Viana;59,7
1353298;Bruna N W Xavier;73,7
1052182;Luigi D S Gonzaga;61,5
2592847;Joao Z X Magalhães;54,8
1000122;Tiago X C Braga;58,7
4655254;Higles K D Barbosa;40,4

Para leitura do arquivo, usei o seguinte código:


import java.io.BufferedReader;

import java.io.FileReader;

import java.io.IOException;

import java.util.ArrayList;

import java.util.List;

import java.util.Scanner;


public class LerArq {

    public static void main(String[] args) {

        @SuppressWarnings("resource")
        Scanner ler = new Scanner(System.in);

        System.out.printf("Digite o nome do Arquivo texto:\n");
        String aluno = ler.nextLine();

        System.out.printf("\nConteúdo do arquivo:\n");
        try {

            List<String> listaAlunos = new ArrayList<>();

            FileReader arq = new FileReader(aluno);
            BufferedReader lerArq = new BufferedReader(arq);

            String linha = lerArq.readLine();

            while (linha != null) {

                System.out.printf("%s\n", linha);    
                String[] totalCaractere = linha.split(";");

                for (String texto : totalCaractere) {    
                    if (texto.trim().length() > 1 && !"".equals(texto.trim())) {
                        listaAlunos.add(texto);
                    }
                }
                linha = lerArq.readLine();
            } 
            arq.close();

                 // Criação Arquivo Binário Aluno

            String path = "C://Users//Lucas-Pc//workspace//Arquivo//in.txt";
            byte[] encoded = Files.readAllBytes(Paths.get(path));
            Files.write(Paths.get("aluno"), encoded, StandardOpenOption.CREATE);

            System.out.println("\n");
            System.out.printf("Total de Caracteres no arquivo: %s\n", listaAlunos.size());

        } catch (IOException e) {
            System.err.printf("Erro na abertura do arquivo: %s.\n", e.getMessage());
        }
        System.out.println();
    }


}

Os dados do arquivo txt foram jogados para um arraylist, de forma que tornasse possível a ordenação como é pedido.

Sou muito novo em código, estou juntando tudo que vejo na internet para realizar o máximo possível...

Alguém poderia me ajudar nessa missão quase impossível ?

Como crio os itens faltantes para os numeros 1,2 e 3 ?

Versões(7):

Ver a versão formatada

Desenvolver App Manipulação de Arquivos

Comentário

new question