Avatar billede alex_sleiborg Nybegynder
16. november 2006 - 21:56 Der er 8 kommentarer og
1 løsning

Finde hvilken uge dato x ligger i

Er der nogen der kan hjælpe en funktion, der finder ud af hvilken uge d. 25.11.06 feks. ligger i???
Avatar billede arne_v Ekspert
16. november 2006 - 21:59 #1
public static int Week3(int year, int mon, int day)
        {
            int a = (14 - mon) / 12;
            int y = year + 4800 - a;
            int m = mon + 12*a - 3;
            int JD = day + (153 * m + 2)/5 + 365*y + y/4 - y/100 + y/400 - 32045;
            int d4 = (((JD + 31741 - JD % 7) % 146097) % 36524) % 1461;
            int L = d4 / 1460;
            int d1 = ((d4 - L) % 365) + L;
            return d1 / 7 + 1;
        }
Avatar billede arne_v Ekspert
16. november 2006 - 22:04 #2
public static int Week1(int year, int mon, int day)
        {
            return (new CultureInfo("da-DK", false)).Calendar.GetWeekOfYear(new DateTime(year, mon, day), CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday);
        }

virker derimod ikke altid
Avatar billede alex_sleiborg Nybegynder
16. november 2006 - 22:08 #3
Tak arne:)

smid et svar

I et tidlige spørgsmål er på eksperten fik jeg en metode der kunne finde uge nummeret, og de næste 52 uger frem.

public static List<int> GetWeekNumbers(int weeksToAdd)
      {
          List<int> weekNumbers = new List<int>();
          DateTime dateTime = DateTime.Now;
          Calendar calendar = CultureInfo.InvariantCulture.Calendar;

          for (int i = 0; i < weeksToAdd; i++)
          {
              int weekNumber = calendar.GetWeekOfYear(dateTime, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday);
              weekNumbers.Add(weekNumber);
              dateTime = dateTime.AddDays(7);
          }

          return weekNumbers;
      }

Du sagde der var fejl i, hvordan retter jeg den fejl?
Avatar billede alex_sleiborg Nybegynder
16. november 2006 - 22:23 #4
Min dato string er bliver lavet således "061106" eller sådan "06-11-06" Men hvordan splitter jeg den string ud i 3 integer??? Du skal nok få 30 point mere for svar:)
Avatar billede alex_sleiborg Nybegynder
16. november 2006 - 22:26 #5
Har fundet ud af det:)
Avatar billede arne_v Ekspert
16. november 2006 - 22:32 #6
du erstatter vel bare

              int weekNumber = calendar.GetWeekOfYear(dateTime, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday);
              weekNumbers.Add(weekNumber);

med et kald til den metode der virker
Avatar billede arne_v Ekspert
16. november 2006 - 22:37 #7
hvis du har en String kan du kalde DateTime Parse

naar du har en DateTime saa har den properties til at fiske items ud med
Avatar billede arne_v Ekspert
16. november 2006 - 22:38 #8
og et svar
Avatar billede alex_sleiborg Nybegynder
16. november 2006 - 22:45 #9
Jeg brugte bare en Substring, til at fiske de 2 tal ud jeg skulle bruge fra den string. Da den string kommer fra en database nemlig. Jeg er igang med noget GDI programmering, det er godt nok lidt noget andet end man er vant til:) Men der er jo kun en måde at lære det:)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester