Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Zamiana sekund na aktualny czas i datę[Czas Uniksowy(EPOCH)]

24 Sie 2009 19:26 3440 4
  • Poziom 16  
    Witam,
    potrzebuję procedurę/funkcję, która zamieniałaby sekundy na czas i datę. Nie za bardzo mam pomysł na napisanie takiej procedury. Chodzi o to, że zmiennej 32-bitowej o wartości 0 odpowiada: Sekunda = 0, Minuta = 0, Godzina = 0, Dzień = 1, Miesiąc =1, Rok = 2000, wartość 1: Sekunda = 1 ..., wartość 60: Sekunda = 0, Minuta = 1 ... itd.
    Oczywiście problem nie jest w obliczaniu Sekund, Minut i Godzin, pojawia się on dopiero przy Dniach, Miesiącach i Latach. Program piszę w C i chcę, aby procedura była jak najbardziej optymalna.

    Dodam jeszcze, że BASCOM posiada takie procedury(Time, Date oraz Syssec).

    Będę bardzo wdzięczny za pomoc oraz przykładowe procedury ;)
    Pozdrawiam ;)
  • Poziom 43  
    Może datę Juliańska zastosuj. Tylko taką przeskalowaną. 3600 razy w dół przeskalowaną. I przesuniętą do 2000 roku.

    Dodano po 1 [minuty]:

    Na wikipedii są wzory do przeliczania tego. Tylko najpierw będziesz musiał tą swoją liczbę podzielić przez 3600. I przesunąć. Ale o ile to nie wiem. Trzeba by wyznaczyć datę juliańską roku 2000 i o taką warość przesówać.
  • Poziom 16  
    Głównie chodzi mi o to, aby to się zgadzało z Delphi. Chodzi o to, że te same dane mają być później przesyłane przez RSa i zapisywane w bazie na PC. To jest projekt stacji meteorologicznej.
    A czy nie ma nigdzie opisanego działania funkcji z BASCOMa :?:

    Dodano po 13 [minuty]:

    Myślę sobie również czy nie przydałby się tu algorytm Zellera... Może po malej przeróbce dałoby się go w tym wykorzystać :| Nie mam po po prostu żadnego pomysłu na napisanie w/w procedury. Szukałem już na google.pl pod różnymi hasłami, ale nic sensownego mi nie wyszukuje.

    Pozdrawiam ;)
  • Poziom 16  
    Może i mam, jakbym wiedział, że czas nazywa się czasem Uniksowym... To znalazłbym to bardzo szybko ;) Problem w tym, że nie wiedziałem. Temat uważam za zakończony, ponieważ znalazłem to czego szukałem :)

    Jeśli chodzi o dekodowanie czasu Uniksowego na czas, którym się posługujemy to można wykorzystać algorytm ze strony: http://www.naslu.com/resource.aspx?id=82]Link

    Pozdrawiam :D