estou com problemas em separar as posições no vetor, abaixo as duas classes.
[code]import java.io.*;
public class Pessoa
{
// atributos
private String partido=null;
private int numero=0;
private String NomeCandidato=null;
private int votos=0;
// construtor com parâmetros
public Pessoa(String partido,int numero,String NomeCandidato,int votos)
{
this.partido=partido;
this.numero=numero;
this.NomeCandidato = NomeCandidato;
this.votos=votos;
}
// retorna um nome do tipo string
public String getpartido()
{
return this.partido;
}
// altera o conteúdo do atributo nome
public void setpartido(String partido)
{
this.partido = partido;
}
//-----------------------------------------
// retorna um nome do tipo string
public int getnumero()
{
return this.numero;
}
// altera o conteúdo do atributo nome
public void setnumero(int numero)
{
this.numero = numero;
}
//-----------------------------------------
// retorna um nome do tipo string
public String getNomeCandidato()
{
return this.NomeCandidato;
}
// altera o conteúdo do atributo nome
public void setNomeCandidato(String NomeCandidato)
{
this.NomeCandidato = NomeCandidato;
}
//-----------------------------------------
// retorna um nome do tipo string
public int getvotos()
{
return this.votos;
}
// altera o conteúdo do atributo nome
public void setvotos(int votos)
{
this.votos = votos;
}
//-----------------------------------------
public void escrever(){
System.out.println(partido+" "+numero+" "+NomeCandidato+" "+votos);
}
}
/*
public void CandidatoEleito(){
try{
RandomAccessFile f = new RandomAccessFile("Candidatos.txt","r");
String linha = f.readLine();
while(linha!=null){
if(this.eleito == true){
System.out.println("Candidatos Eleitos:" +linha);
}
linha = f.readLine();
}
}
catch(IOException e){
System.out.println("Nao foi lido o arquivo");
}
}
*/
/this.linha = linha;
if (this.NomeCandidato.contains("")){
this.eleito = true;
}
else{
this.eleito = false;
}
*/[/code]
[code]import java.io.;
import java.lang.;
public class Principal
{
private Pessoa pessoa[] = null;
private int tamanho=0;
public Principal(){
this.pessoa = null;
this.tamanho=0;
}
public void criarvetor(){
//le o arquivo para contat o numero de linhas
try{
//abre o arquivo
RandomAccessFile f=new RandomAccessFile("Candidatos.txt","r");
int cont=0;
String linha=f.readLine(); //lê a linha
while(linha!=null){ //le enquanto não tiver uma linha em branco
cont++;
linha=f.readLine(); //lê a proxima linha
}
//altera altera o valor do atributo tamanho
this.tamanho=cont;
//cria o vetor
this.pessoa=new Pessoa[this.tamanho];
//fecha o arquivo
f.close();
//System.out.println(cont);
}
catch (IOException e){
e.printStackTrace();
}
}
public void AlimentaVetor(){
try{
RandomAccessFile f = new RandomAccessFile("Candidatos.txt","r");
String linha=f.readLine();
int posicao=0;
//int contador=0; //contador de linhas não utilizado
int l1=0;
while(linha!=null){
//separa os dados da linha
String x[]=linha.split("\t");
//System.out.println("ate aqui funciona"+contador++);
//cria o objeto no vetor
this.pessoa[posicao]=new Pessoa ((x[0]),Integer.parseInt(x[1]),(x[2]),Integer.parseInt(x[3]));
//this.pessoa[posicao]=new Pessoa (x[0],x[1],x[2],x[3]);
//incrementa a posição
posicao++;
//testa para ver se já preencheu o vetor
if (posicao==this.tamanho){
//encerra
break;
}
//le a proxima linha
linha=f.readLine();
}
System.out.println(l1++);
}
catch (IOException e){
e.printStackTrace();
}
}
public void leitura(){
try{
RandomAccessFile f = new RandomAccessFile("Candidatos.txt","r");
String linha = f.readLine();
while(linha!=null){
System.out.println(linha);// ==> String
linha = f.readLine();
}
}
catch(IOException e){
System.out.println("Nao foi lido o arquivo");
}
}
public void escrever(){
for (int i=0;i<tamanho;i++){
pessoa[i].escrever();
}
}
public void executar(){
//this.leitura();
this.criarvetor();
this.AlimentaVetor();
this.escrever();
}
public static void main(String args[]){
Principal p = new Principal();
p.executar();
}
}[/code]
Atcs.
Magjacare@bol.com.br
[color=“red”][size=“9”]* Utilize BBCode em seus posts e aumente as chances de resposta - Guilherme Mello[/size][/color]