none
Somar arquivos em txt RRS feed

  • Pergunta

  • Queria saber se existe alguma forma de somar dados que estão no txt. 

    Machine,Data,QtdProducao
    Machine 01,26/04/2017,12
    Machine 02,26/04/2017,31
    Machine 03,26/04/2017,43
    Machine 01,26/04/2017,31
    Maquina 01,27/04/2017,21
    Maquina 03,27/04/2017,43
    Maquina 03,27/04/2017,12
    Maquina 01,27/04/2017,10

    Queria somar os valores da máquina 1, 2 e 3. E depois gerar um gráfico com eles.  Consigo cadastrar e salvar os arquivos normalmente, não sei com faço pra salvar.

    quinta-feira, 27 de abril de 2017 06:05

Respostas

  • rlmarioza,

    Sugiro que abra uma outra pergunta para dúvidas diferentes e lembre-se de marcar a resposta como aceita, para melhor organização do fórum.


    Juliano Nunes - http://linkedin.com/in/julianonunes

    Lembre-se de clicar em "Votar como útil" e "Marcar como Resposta" caso tenha respondido sua dúvida.

    Remember to "Vote as Helpful" and "Mark as Answer" if your question has been answered.

    • Marcado como Resposta rlmarioza quinta-feira, 27 de abril de 2017 18:09
    quinta-feira, 27 de abril de 2017 16:11

Todas as Respostas

  • Você precisa ler as linhas uma por vez, fazer o split usando a vírgula como separador (ou via expressão regular), daí ir convertendo o elemento referente a coluna QtdProducao como um inteiro e somá-lo.

    string line;  
    var sum = 0; 
     
    var file = new System.IO.StreamReader(@"c:\arquivo.txt"); 
    
    //Ignora a primeira linha?
    //file.ReadLine();
     
    while((line = file.ReadLine()) != null)  
    {  
        var vl = line.Split(new[] { ',' });
        sum += Convert.ToInt32(vl[2]);
    }  
      
    file.Close();  


    Juliano Nunes - http://linkedin.com/in/julianonunes

    Lembre-se de clicar em "Votar como útil" e "Marcar como Resposta" caso tenha respondido sua dúvida.

    Remember to "Vote as Helpful" and "Mark as Answer" if your question has been answered.

    quinta-feira, 27 de abril de 2017 10:27
  • Hum... não lembro de ter visto nada com parecido com esse split na aula. Porém deu uma clareada. 

    Onde no código ele define que irá somar somente a máquina 1, maquina 2....? 

    Grato

    quinta-feira, 27 de abril de 2017 12:56
  • Você teria que verificar a cada passo do loop qual o valor de vl[0] (no índice zero há a identificação da máquina).

    if (vl[0] == "Machine 01")
    {
    
    }


    Juliano Nunes - http://linkedin.com/in/julianonunes

    Lembre-se de clicar em "Votar como útil" e "Marcar como Resposta" caso tenha respondido sua dúvida.

    Remember to "Vote as Helpful" and "Mark as Answer" if your question has been answered.

    quinta-feira, 27 de abril de 2017 13:05
  • Obrigado pela ajuda Juliano. Vou quebrar a cabeça aqui e tentar. Estou iniciando em programação.
    quinta-feira, 27 de abril de 2017 14:16
  • Juliano consegui fazer a soma e gerar o total em um novo aquivo txt. 

    Machine 01,26/04/2017,54
    Machine 02,26/04/2017,31
    Machine 03,26/04/2017,55

    Machine 04,26/04/2017,35

    Machine 05,26/04/2017,23

    Como gero um grafico a partir desse txt?

    quinta-feira, 27 de abril de 2017 16:07
  • rlmarioza,

    Sugiro que abra uma outra pergunta para dúvidas diferentes e lembre-se de marcar a resposta como aceita, para melhor organização do fórum.


    Juliano Nunes - http://linkedin.com/in/julianonunes

    Lembre-se de clicar em "Votar como útil" e "Marcar como Resposta" caso tenha respondido sua dúvida.

    Remember to "Vote as Helpful" and "Mark as Answer" if your question has been answered.

    • Marcado como Resposta rlmarioza quinta-feira, 27 de abril de 2017 18:09
    quinta-feira, 27 de abril de 2017 16:11