[c#] Determinar dia da semana de uma data

muddymind

1st Folding then Sex
Boas!

Sou um infeliz cliente adsl da novis que veio da oni e que agora está a passar-se com o contador de tráfego.

O contador não faz distinção de trafego de happy hours do normal, mostra o trafego por sessões que estão misturadas (podem haver várias num dia só consoante o modem tenha reiniciado várias vezes) e mostra-me o trafego de dia 1 a 31 (mas o meu é contabilizado na factura de 16 a 15...)

Decidi então criar um programazito em c# que me calculasse o tráfego a partir das tabelas deles e fazer mesmo gráficos e afins mostrando a evolução do consumo nos dias. Já tá praticamente tudo feito excepto que me falta saber o dia da semana pelas datas. É que eu tenho as happy hours nos dias de semana (2ª a 6ª) e gostava de que ele conseguisse então determinar ao ler uma quantidade de tráfego no horário happy hours determinar se esse tráfego conta ou não como happy hours dependendo do dia da semana... any ideas?

Actualmente tenho para perguntar qual o dia da semana do dia 1 sempre que importa uma determinada tabela de um mês e a partir daí fazer as contas mas gostava de fazer de uma forma automatizada :)

[]
 
o programa vai ter de saber sempre qual o mês e ano que queres analisar, porque imagina que querias importar a tabela de há 3 meses atrás para analisar.
ou o file que importas já inclui o mês e ano correspondente ou então tens de fazer com que o programa pergunte.

a partir daí usas a DateTime. um exemplo seria:

string month = month; //ja o pediste ao user ou leste do ficheiro importado
string year = year; //idem aspas

DateTime date = DateTime.Parse("1" + month + year"); //um exemplo seria .Parse( "1 July 2008");

depois usas a property .DayOfWeek da DateTime (que é um enum) que devolve o dia da semana da data que está na DateTime (0 = domingo, 1 = segunda, ..., 6 = sabado).
 
Boas!

Só me faltava o dayofweek :) como já tinha a data toda em inteiros é só criar um datetime com isso e depois verificar o dia :)

Obrigado pela ajuda ;)
 
Consegues saber o dia do 1º do mês? Se fizeres (dia-1)mod(7) vai te dar um número entre 0 e 6. 0 seria o dia igual ao 1º, and so on até 6 que seria o dia antes.

Mas isto já são contas, que não foi o que pediste :wvsore:
 
Back
Topo