Olá Guilherme! Estou com alguns problemas no meu exercício pessoal desse módulo. Na hora de escrever uma conta corrente no CSV e ler ele. Vou explicar:
Tenho uma classe Bank que tem todas as abstrações para eu criar essa conta corrente. Quando crio, ele verifica se a linha já existe no CSV, adicionando lá caso contrário. Até aí tudo bem. O problema é que quando crio a string (exemplo:
(exemplo: )
var LinhaCSV = {$"Numero}, {Saldo}, {bClienteMulher}, {Nome}"
sendo saldo (100.50) o double é escrito como (100,50) no bloco de notas e aí meu
split(',')
pega essa vírgula, passa um array de 5 elementos ao invés de 4, manda um "50" pra bool e dispara uma exceção (SystemFormatException). Gostaria de saber como eu poderia resolver isso mantendo a vírgula como separador ao invés de usar outro char como o pipe '|' que já foge do padrão CSV.
Outra situação que acontece é que, durante alguma escrita (cerca de 2 ou 3 nomes escritos)no bloco de notas, o StreamWriter está jogando alguns caracteres aleatórios nos campos da string. Ae toda vez que abro o .exe que ele tenta carregar os objetos anteriores, ele tenta dar um
int.Parse()
e ele dispara o mesmo tipo de exceção, pois esses caracteres estranhos deformam a string e ele n consegue dar um parse de int.
Aqui vou deixar aqui meu código fonte: https://drive.google.com/open?id=1wTxO4guTyOGSem_U9ORoD52IwcReD6s1