Sou novo na utilização de java.. e preciso mto da ajuda d vcs

criei um código que le um arquivo txt e joga na console do eclipse.
eis o código
package coleta.control;
import java.io.*;
import java.util.Random;

public class TestaStreams{
public static void main (String[] args) throws IOException{

//Lendo e imprimindo linhas de um arquivo-texto para a console:
	FileReader reader = new FileReader("log5.txt");
	BufferedReader br = new BufferedReader(reader);
	String linha;
	int linhasLidas = 0;
	while ((linha = br.readLine())!= null ){

//System.out.println(linha);

		String[] items = linha.split("\\,"); 
		for (int i = 0; i < items.length; i++) {
			
		System.out.println(items[i]);		
	
			
		   	
		  
		    }
		
			
		    

		
		linhasLidas++;
		
	}

a partir deste código, meus dados aparecem da seguinte forma:

102
2009
45
1618
2.543
311.3
0
101
2009
45
1619
0
0
0
0
102
2009
45
1619
2.419
311.2
0
101
2009
45
1620
0
0
0
0
102
2009
45
1620
2.107
311.1
0
103
2009
45
1620
0
0
1610
0
1610
104
2009
45
1620
2.658
4.116
1613
0
1610
101
2009
45
1621
0
0
0
0
102
2009
45
1621
1.723
311
0
101
2009
45
1622
0
0
0
0
102
2009
45
1622
2.074
310.8
0
101
2009
45
1623
0
0
0
0
102
2009
45
1623
2.898
310.8
0
101
2009
45
1624
0
0
0
0
102
2009
45
1624
2.711
310.6
0
101
2009
45
1625
0
0
0
0
102
2009
45
1625
2.468
310.5
0
101
2009
45
1626
0
0
0
0
102
2009
45
1626
2.128
310.4
0
101
2009
45
1627
0
0
0
0
102
2009
45
1627
1.802
310.3
0
101
2009
45
1628
0
0
0
0
102
2009
45
1628
2.167
310.2
0
101
2009
45
1629
0
0
0
0
102
2009
45
1629
2.491
310.1
0
101
2009
45
1630
0
0
0
0
102
2009
45
1630
2.377
309.9
0
103
2009
45
1630
0
0
1620
0
1620
104
2009
45
1630
2.284
3.724
1623
0
1620

Como de fazer um gráfico pegando apenas os quatro números que vêm depois do “102” que o número do aparelho que fornece este dado.
Alguém poderia me ajudar por favor?
Não sei mais o que fazer.
Desde já agradeço.
Eduardo

Você precisa verificar como é o layout do arquivo, e a partir daí pegar as informações de cada campo, para construir o gráfico. Tem uma API chamada iText que ajuda a construir pdf com relatórios e gráficos.

Coloque um exemplo de arquivo aí pra gente ver.

o arquivo é guardado desta forma

*7H

MODE 08:00
01:00 22
02:207991
03:298000
04:00 2

104,2009,44,1600,.619,1.372,1559,0,1550
101,2009,44,1601,0,0,0,0
102,2009,44,1601,.506,292.7,.076
101,2009,44,1602,0,0,0,0
102,2009,44,1602,.911,292.7,.072
101,2009,44,1603,0,0,0,0
102,2009,44,1603,1.058,292.6,.079
101,2009,44,1604,0,0,0,0
102,2009,44,1604,.88,292.6,.082
101,2009,44,1605,0,0,0,0
102,2009,44,1605,1.117,292.6,.072
101,2009,44,1606,0,0,0,0
102,2009,44,1606,.835,292.6,.072
101,2009,44,1607,0,0,0,0
102,2009,44,1607,.851,292.6,.072
101,2009,44,1608,0,0,0,0
102,2009,44,1608,.91,292.6,.067
101,2009,44,1609,0,0,0,0
102,2009,44,1609,.853,292.6,.072
101,2009,44,1610,0,0,0,0
102,2009,44,1610,.673,292.6,.074
103,2009,44,1610,0,0,1600,0,1600
104,2009,44,1610,.859,1.666,1601,0,1600
101,2009,44,1611,0,0,0,0
102,2009,44,1611,.768,292.6,.075
101,2009,44,1612,0,0,0,0
102,2009,44,1612,.719,292.7,.069
101,2009,44,1613,0,0,0,0
102,2009,44,1613,.266,292.8,.083
101,2009,44,1614,0,0,0,0
102,2009,44,1614,.547,292.9,.085
101,2009,44,1615,0,0,0,0
102,2009,44,1615,.461,292.9,.086
101,2009,44,1616,0,0,0,0
102,2009,44,1616,.529,292.9,.088
101,2009,44,1617,0,0,0,0
102,2009,44,1617,.283,293,.069
101,2009,44,1618,0,0,0,0
102,2009,44,1618,.523,293.1,.039
101,2009,44,1619,0,0,0,0
102,2009,44,1619,.506,293.2,.022
101,2009,44,1620,0,0,0,0
102,2009,44,1620,.683,293.3,.052
103,2009,44,1620,0,0,1610,0,1610
104,2009,44,1620,.528,1.176,1613,0,1610
101,2009,44,1621,0,0,0,0
102,2009,44,1621,.662,293.4,.075
101,2009,44,1622,0,0,0,0
102,2009,44,1622,.577,293.5,.074
101,2009,44,1623,0,0,0,0
102,2009,44,1623,.586,293.6,.083
101,2009,44,1624,0,0,0,0
102,2009,44,1624,.748,293.6,.072
101,2009,44,1625,0,0,0,0
102,2009,44,1625,.658,293.7,.044
101,2009,44,1626,0,0,0,0
102,2009,44,1626,.755,293.8,.05
101,2009,44,1627,0,0,0,0
102,2009,44,1627,.802,293.9,.044
101,2009,44,1628,0,0,0,0
102,2009,44,1628,.964,293.9,.042
101,2009,44,1629,0,0,0,0
102,2009,44,1629,.946,294,.047
101,2009,44,1630,0,0,0,0
102,2009,44,1630,.879,294.1,.052
103,2009,44,1630,0,0,1620,0,1620
104,2009,44,1630,.758,1.274,1628,0,1620
primeiro numero é o aparelho, o segundo é o ano, o terceiro é o dia, o quarto é a hora e o quinto é a velocidade do ventro.
preciso pegar a hora, o dia e o ano (eixo x) e a velocidade (eixo y).

infelizmente não estou conseguindo.

mas só preciso pegar os dados das linhas que começam com “104”

no seu loop, o que vc usou o :

while ((linha = br.readLine())!= null ){

eu indicaria antes de tudo fazer um if, verificando se o ! linha.substring(0, 3).equals(“104”)
dentro do if da um continue;

e eu te indicaria separar usando o split com virgula e não com barra invertida… vc tb pode usar a classe Scaner pra isso… tem uns exemplos por ai… ela tb é boa pra parsea…

ok, vou tentar aqui e aviso qd acabar…
obrigado

[code]
import java.io.*;
import java.util.Random;

public class TestaStreams{
public static void main (String[] args) throws IOException{

	//Lendo e imprimindo linhas de um arquivo-texto para a console:
	FileReader reader = new FileReader("log5.txt");
	BufferedReader br = new BufferedReader(reader);
	String linha;
	int linhasLidas = 0;
	while ((linha = br.readLine())!= null ){
	//System.out.println(linha);

		String[] items = linha.split("\,");
		if (items[0].equals("104")){
			for (int i = 0; i < items.length; i++) {

				System.out.print(items[i]+" ");
			}
			System.out.println();
		}
	}

}

}[/code]

Sempre que postar um trecho de código procure colocar entre as tags "Code", como acima mostrado. É só você selecionar o texto e clicar no botão "Code".
Eu criaria uma classe para você representar cada linha como um objeto. Por exemplo, esta classe poderia ter o nome de Aparelho, com os atributos código, ano, velocidade, etc, e seus respectivos gets e sets.

ta ok…
não sabia desta
obrigado

Roger, testei o seu codigo e agora aperece as informações em blocos separados. Ok, perfeito.
Mas aparece tds os números… nao apenas o “104”.

Vou tentar outras coisas mais aqui.

é meus caros…
entendi oq vcs passaram,
mas infelizmente sou mto novo no java, coisa de uma semana…
nao estou conseguindo fazer o gráfico.

Obrigado pela ajuda de vcs…
Eduardo

eu escrevi o código desta página que vc me passou e deu o seguinte erro:

Launch configuration JFreeChart references non-existing project Gráfico.

o que significa isto?

Se vc estiver usando Java 1.5, acho melhor usar o Sanner, que vc escreve menos código e tem boas possibilidades para manusear o arquivo.

Na sua lógica, leia a primeira linha e coloque em um array de String com split na vírgula (linha.split(",");), aí verifica se a primeira posição do array tem o valor 104, se tiver, pega as outras informações.

Para montar o gráfico já foi indicado no post anterior.

[quote=eduardoesn]é meus caros…
entendi oq vcs passaram,
mas infelizmente sou mto novo no java, coisa de uma semana…
nao estou conseguindo fazer o gráfico.

Obrigado pela ajuda de vcs…
Eduardo[/quote]

Para os gráficos, tente o JFreeChart
http://www.devmedia.com.br/articles/viewcomp.asp?comp=3163
http://www.jfree.org/jfreechart/

flws!