firejonh Posted December 16, 2009 at 02:55 PM Report Share #300737 Posted December 16, 2009 at 02:55 PM Boa tarde pexoal, Eu tenho um ficheiro notas.dad onde estão os seguintes dados e no programa que estou a fazer em java tenho que ler do ficheiro estes valores: 4 8.4 12.4 "João Martins" 10.2 15.0 "Ana Almeida" 19.1 14.5 "Carlos Silva" 13.2 10.1 "Inês Costa" O que é pedido é fazer um array bidimensional double aos 2primeiros valores, um array int no 3ºvalor e um array string no 4ºvalor. Onde o 4 da primeira linha é o numero de linhas do ficheiro. Este valor nao pode entrar no valores recolhidos para o array. Eu tentei fazer axim mas não deu. Têns sugestões? Scanner fichpadroes= new Scanner(new File("padroes.dad")); while(fichpadroes.hasNext()){ double [][]uva; uva= new double[fichpadroes.nextInt()][2];// 500 linha onde estão os 2 parametros for(int peso=1;peso<uva.length;peso++){// imprime como matriz uva[peso]= fichpadroes.hasNextDouble(); } int []uva1; uva1= new int[fichpadroes.nextInt()]; for(int pigm=1;pigm<uva1.length;pigm++){ uva1[pigm]=fichpadroes.nextInt(); } String []uva2; uva2= new String[fichpadroes.nextInt()]; for(int classe=1;classe<uva2.length;classe++){ uva2[classe]=fichpadroes.next(); } } fichpadroes.close(); Obrigado Link to comment Share on other sites More sharing options...
M6 Posted December 16, 2009 at 03:29 PM Report Share #300743 Posted December 16, 2009 at 03:29 PM Uma solução quick & dirty será: A primeira coisa é leres o ficheiro até encontrares a 1ª linha que não seja vazia. Ai lês o valor como inteiro, que é o número de linhas que tens de ler. Depois fazes um ciclo de 1 até ao valor que leste lendo cada uma das linhas de cada vez. Por cada linha que leste, eliminas todas as " existentes e fazes um split da string por espaços, obténs assim um array. Esse array terá na primeira posição o primeiro valor double, na segunda posição o segundo valor double e em todas as restantes posições todas as palavras da restante linha, que só tens de concatenar adicionando um espaço entre cada palavra. 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar." Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now