estou enviando o arquivo texto em anexo,
meu caso é o seguinte no arquivo texto, por exemplo em uma linha tenhoa as seguintes informações:
2 -1.0; 0.0; 0.0; 0.69813174
e preciso jogar cada numero em uma variavel, como a seguir:
quadro =2
x=-1.0
y=0.0
z=0.0
angulo = 0.69813174
Alguem pode me dar uma luz?
obrigado
Fabio
Use BufferedReader para abrir o arquivo, readLine() para ler linha por linha, e o metodo split() ( ou mesmo substring, dependendo do padrao) para “quebrar” a linha nas partes necessarias. Algo como
BufferedReader reader = new BufferedReader(new FileReader("gl3d.txt"));
String line = null;
while ((line = reader.readLine()) != null) {
// aqui voce tem uma linha.. use line.split() ou
// linhe.substring() para separar os dados
}
reader.close();
Rafael
p5f8
Março 22, 2005, 3:52pm
#3
Caramba… eu estava todo empolgado fazendo esse exemplo e o Rafael já respondeu… :roll:
mas mesmo assim vou postar o código que eu estava testando…
[code]import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class LendoArquivo {
/**
* @param args
* @throws IOException
*/
public static void main(String... args) throws IOException {
// TODO Auto-generated method stub
BufferedReader br = new BufferedReader(new FileReader("arquivo.txt"));
String linha = "";
while ( (linha = br.readLine()) != null ) {
int numeroDoRegistro = Integer.parseInt(linha.substring(0,4).trim());
String array[] = linha.substring(5,(linha.length()-1)).split(";");
double x, y, z, angulo;
try {
x = Double.parseDouble(array[0]);
} catch ( NumberFormatException nfe ) {
x = 0.0;
}
try {
y = Double.parseDouble(array[1]);
} catch ( NumberFormatException nfe ) {
y = 0.0;
}
try {
z = Double.parseDouble(array[2]);
} catch ( NumberFormatException nfe ) {
z = 0.0;
}
try {
angulo = Double.parseDouble(array[3]);
} catch ( NumberFormatException nfe ) {
angulo = 0.0;
}
System.out.println(linha);
System.out.println("--> registro=" + numeroDoRegistro + " x " + x + " y " + y + " z " + z + " angulo " + angulo);
System.out.println("\n");
}
br.close();
}
}
[/code]