Pessoal preciso ler um txt com este conteúdo:
0.000000 0.000000 0.000000 0.000000 0.033639 0.000000 0.000000 0.000000 0.000000 0
0.001019 0.000000 0.000000 0.100917 0.060345 0.060345 0.051724 0.008621 0.000000 1
0.000000 0.000000 0.021944 0.006270 0.119565 0.010870 0.043478 0.021739 0.076087 0
0.019473 0.000000 0.000000 0.069874 0.024390 0.048780 0.018293 0.030488 0.018293 3
0.046575 0.000000 0.016438 0.000000 0.113636 0.011364 0.022727 0.045455 0.113636 5
onde cada linha é composta por um vetor de característica e o ultimo caractere é a classe a qual este vetor pertence, enfim…
Leio o arquivo linha por linha e preciso colocar cada linha do arquivo em uma posição de um array e não estou conseguindo fazer isso.
Se alguém puder me ajudar nisso fico grato…
public static void main(String[] args) throws FileNotFoundException, IOException {
String dir = "test_2.txt";
BufferedReader reader = new BufferedReader(new FileReader(new File(dir)));
String linha = null;
//List<String> tokens = new ArrayList<String>();
List<String> classes = new ArrayList<String>();
List<String> vetor = new ArrayList<String>();
//List<String> matriz = new ArrayList<String>();
int i =0;
while ((linha = reader.readLine()) != null) {
StringTokenizer separador = new StringTokenizer(linha);
i = separador.countTokens(); //pega a quantidade de tokens de cada linha
char u = ultimoChar(linha);
String cl = Character.toString(u);
classes.add(cl); // pega a classe (ultimo caractere)
vetor.add(linha); // aki vai tudo para um array, porém tenho que adicionar uma linha em cada posição do array
}
System.out.println(i-1);
System.out.println(classes);
System.out.println(vetor);
}
//pega a classe de cada vetor de caracteristica
public static char ultimoChar(String s) {
char r = (char) 0;
int i = 0;
do {
try {
r = s.charAt(i++);
} catch (IndexOutOfBoundsException e) {
return r;
}
} while (true);
}