none
Como criar uma lista de datas a partir de um determinado periodo? RRS feed

  • Pergunta

  • Pessoal, preciso criar uma lista(array) de datas a partir de um determinado periodo e quantidades de parcelas

    seria assim(exemplo):

    coloco a data inicial: 01/01/2011

    depois coloco o periodo: 15

    depois as parcelas: 3

    assim o sistema tem que gerar uma lista assim:

    01/01/2011

    16/01/2011

    31/01/2011

    domingo, 27 de março de 2011 23:48

Respostas

Todas as Respostas

  •  

    int numParcelas = 3;
    
    int periodo = 15;
    
    List<DateTime> listaDatas = new List<DateTime>();
    
    DateTime dtInicial = Convert.ToDateTime("01/01/2011");
    
    
    
    for(int i = 0 ; i < numParcelas ; i ++)
    
    {
    
    listaDatas.Add(dtInicial.AddDays(i > 0 ? periodo : 0));
    
    }
    
    
    


    PS: acabei de ler e pelo visto vc não quer usar lista, e sim Array. No caso, seria

     

    DateTime[] datas = new DateTime[numParcelas];
    
    for(......//mesma coisa)
    
    {
    
    datas[i] = dtInicial.AddDays(i > 0 ? periodo: 0);
    
    }
    
    

     

    • Sugerido como Resposta Luiz Estevam segunda-feira, 28 de março de 2011 01:59
    segunda-feira, 28 de março de 2011 00:11
  • Rafael,

    Segue outro exemplo, mais simplificado...

      private DateTime[] GetDates(DateTime startDate, int interval, int count)
      {
       // inicializa o array com o resultado...
       DateTime[] result = new DateTime[count];
       // preenche as datas...
       for (int i = 0; i < count; i++)
        result[i] = startDate.AddDays(i * interval);
       return result;
      }
    

    at.,


    Rogério de Resende Ohashi | Ohashi.NET (.NET, Security, C#, WinForms, WCF, Workflow, Azure, Windows Phone, Mono)
    segunda-feira, 28 de março de 2011 12:09
    Moderador