Boa noite, estou com uma dificuldade referente a leitura de dados de um arquivo txt, como posso implementar para que o arquivo caia no meu algorítimo ?
Segue meu algoritimo, mas o resultado está se divergindo do que realmente era pra ser
O que você quer é pegar os valores do arquivo texto e colocar na variável ma[][], é isso?
Faltou basicamente você pegar os valores, fazer as devidas comparações e atribuições, se entendi o que você precisa. Algo mais ou menos assim:
[code]public static void main(String[] args) throws IOException {
boolean ma[][] = new boolean[3][3];
boolean mf[][] = new boolean[3][3];
int i=0, j=0;
try {
InputStream entrada = new FileInputStream("C:\\Users\\Luiz Almeida Júnior\\Desktop\\Mat.txt");
InputStreamReader reader = new InputStreamReader(entrada);
BufferedReader buffer = new BufferedReader(reader);
String texto;
while ((texto = buffer.readLine()) != null) {
System.out.println(texto);
// pegando os valores
ma[i][j] = (texto.contains("true"));
i++;
if (i==3) {
j++;
i = 0;
}
}
} catch (FileNotFoundException e) {
e.getMessage();
}
imprime(ma);
fechamento(ma, mf);
imprime(mf);
} [/code]
É claro, é um jeito meio “bruto” de fazer a coisa. Não é muito flexível (não permite, por exemplo, uma matriz diferente de 3x3). Mas deve clarear sua ideia quanto a esse aspecto. Qualquer coisa, pergunte ou explique melhor o que deseja.
[quote=TerraSkilll]O que você quer é pegar os valores do arquivo texto e colocar na variável ma[][], é isso?
Faltou basicamente você pegar os valores, fazer as devidas comparações e atribuições, se entendi o que você precisa. Algo mais ou menos assim:
[code]public static void main(String[] args) throws IOException {
boolean ma[][] = new boolean[3][3];
boolean mf[][] = new boolean[3][3];
int i=0, j=0;
try {
InputStream entrada = new FileInputStream("C:\\Users\\Luiz Almeida Júnior\\Desktop\\Mat.txt");
InputStreamReader reader = new InputStreamReader(entrada);
BufferedReader buffer = new BufferedReader(reader);
String texto;
while ((texto = buffer.readLine()) != null) {
System.out.println(texto);
// pegando os valores
ma[i][j] = (texto.contains("true"));
i++;
if (i==3) {
j++;
i = 0;
}
}
} catch (FileNotFoundException e) {
e.getMessage();
}
imprime(ma);
fechamento(ma, mf);
imprime(mf);
} [/code]
É claro, é um jeito meio “bruto” de fazer a coisa. Não é muito flexível (não permite, por exemplo, uma matriz diferente de 3x3). Mas deve clarear sua ideia quanto a esse aspecto. Qualquer coisa, pergunte ou explique melhor o que deseja.
Abraço.[/quote]
Bah, muito obrigado pela ajuda, clareou sim. Muito obrigado mesmo,