Boa tarde galera, tava procurando sobre o assunto pra salvar os players e as partidas que eu crio em uma sessão do jogo da velha e achei nessa fonte logo na primeira resposta: https://learn.microsoft.com/en-us/answers/questions/699941/read-and-process-json-file-with-c.html?sort=votes. Segue a implementação que resolveu meu problema.
Escrita:
Leitura:
No caso a implementação pra outra lista segue o mesmo princípio mudando somente o nome do arquivo final no filePath. Só duas observações:
1 - no meu caso deu um erro na desserialização de uma classe e a solução que funcionou foi declarar todos os gets e sets de todos os atributos e um construtor vazio.
2 - Eu tive que usar essa palavra-reservada "ref" no ReadJSON pq quando usei a passagem de parâmetro pura não tava atualizando as listas criadas no código principal mesmo a leitura dentro do método acontecendo. Aí usei o "ref" e consegui enviar a lista vazia e popular ela com a leitura de forma correta.
Mauricio Santana @mauriciosmMassa, Bruno!
Devo começar em breve o jogo da velha.
Já marca aí no tópico como solução, vai ajudar muita gente.- TEm resposta aBrunoSoares⬆:Thiago Nebuloni @thiagonebuloni
Nesse método precisa usar using Newtonsoft?
Eu tentei fazer a gravação em json mas não consegui porque tinha que fazer uma configuração na ide e aparentemente não existe como fazer no vs code.
Então por enquanto estou fazendo gravação em txt mesmo, usando só o using (StreamWriter se...)Vou tentar achar outra solução pra json depois.
Bruno Soares @BrunoSoaresNão Thiago, eu nem tinha me atentado a isso até você falar, o VS não acusa nada mesmo usando comandos de bibliotecas que você não importou explicitamente, ele simplesmente importa automaticamente. Dei uma olhada no repositório e os imports na classe que eu realizo a operação sobre o JSON são esses:
Se você quiser dar uma olhada melhor: https://github.com/brunosas88/tic-tac-toe-game/blob/main/Tic-Tac-Toe/Utils.cs
Se tiver mais dúvida só flr que mesmo que eu não saiba vou dar uma procurada pra gente trocar essa ideia que saber bem serializar objetos pode vir a calhar mais tarde.
- TThiago Nebuloni @thiagonebuloni
Obrigado Bruno! Vou dar uma olhada com calma e talvez já passe a usar o json mesmo.
Em resposta aBrunoSoares⬆:Mattheus Henrique @MattheusHenriqueShow estava procurando saber sobre isso, já estava achando fazer isso mais complicado do que fazer um CRUD em sí, mas é só por que estava dificil de achar conteúdo bem explicado mesmo, vou tentar fazer aqui !
- LEm resposta aBrunoSoares⬆:LENNAN @lennanrnz
fiquei uma semana nisso mas agr finalmente tirou minhas duvidas