Colocar Resposta 
 
Avaliação do Tópico:
  • 0 votos - 0 Média
  • 1
  • 2
  • 3
  • 4
  • 5
Dúvida C# guardar dados em ficheiro de texto
10-03-2012, 20:53
Mensagem: #2
RE: Dúvida C# guardar dados em ficheiro de texto
Boas,

Sem o código todo não dá para testar grande coisa, visto que usas classes as quais não apresentas o código.

No entanto, assim numa vista rápida vejo muitos erros de programação que podem (ou não) estar a influenciar o sistema de gravar.

1º) Declaras um objecto ao qual lhe atribuis o nome do mesmo:

private tabuleiro tabuleiro;

Como podemos ver aqui neste exemplo chamas à variável do tipo tabuleiro o próprio nome tabuleiro. Por vezes não percebo como é que os compiladores não acusam este tipo de erros.

2º) Usas caracteres especiais para dar nomes aos objectos:

private histórico historico;

Declaraste uma variável do tipo histórico em que histórico tem um acento. Por vezes (ou quase sempre) isto dá asneira.

Não duvido nada de que o que eu referi no ponto 1 e 2 sejam os causadores do problema de gravar.

Na própria função de gravar nos foreach tens o problema dos caracteres especiais

foreach (peças pedra in jogador1.Peças)

Como podes ver colocaste peças com o próprio 'ç'.

Uma coisa que o C# é muito, mas mesmo muito sensível, são os nomes das classes iniciados por letra minúscula.

As classes tabuleiro, players e historico deviam ser Tabuleiro, Players e Historico.

Uma outra coisa que te deves habituar a fazer, não é que te traga problemas, mas torna o código mais coerente, é utilizar o nome que se atribui aos objectos, classes e afins numa única linguagem. Repara que tens a classe tabuleiro e a classe players. A uma classe deste o nome em português e outra deste o nome em Inglês.

Mas o que eu te chamo à atenção mesmo, só neste pedaço de código, é:
- Para o nome das classes em letra minúscula (a primeira letra deve ser sempre em Maiúscula), ex.: tabuleiro deveria ser Tabuleiro, game deveria ser Game, players deveria ser Players, etc. Este problema já me fez perder dois dias de trabalho académico só porque nunca ninguém me avisou de tal situação, e o programa estava a gerar mal as coisas por causa da classe estar com a primeira letra minúscula.

- Cuidado com os caracteres especiais no nome de classes e variáveis. Por exemplo, tens histórico quando deveria ser só historico. Quando for assim dá nomes em Inglês que resolves logo o problema.

Espero ter ajudado, mas sem o projecto todo não te posso dar grande ajuda.

Cumps,
Manuel Rocha

[Imagem: pplware_staff.png]
Licenciado em Informática para a Saúde pela ESTG Leiria
Mestrado em Informática - Especialização em Sistemas de Informação na Universidade Portucalense
Especialização em Design Gráfico
Visitar Website de este utilizador Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
Colocar Resposta 


Mensagem neste Tópico
RE: Dúvida C# guardar dados em ficheiro de texto - rei007 - 10-03-2012 20:53

Saltar Fórum:


Utilizadores a ver este tópico: 1 Visitante(s)