Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1509 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  [Format] Une date du type "2415019" sous Unix...Comment la convertir?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Format] Une date du type "2415019" sous Unix...Comment la convertir?

n°180158
Tetedeienc​h
Head Of God
Posté le 22-07-2002 à 17:31:35  profilanswer
 

bonjour tous !
 
Je bosse sur une base de données provenant d'un SGBD utilisant oracle sous unix, et j'ai des formats de date bizarre...
 
Notamment, la date "2415019" correspond au 1er janvier 1900... donc vous imaginez le merdier.
 
En fait, j'ai capté que 2415019 correspondait au nombre de jours écoulés depuis une date X... Du moins niveau cohérence des données ce serai aprfait ( => Donc ca doit etre ca).
 
je me demandais si il existait une lib en C, ou un truc prédéfini, au cas ou ce format serai généralisé a unix par exemple, pour retrouver une date du type : 01011900 ou un truc du genre...
 
Bref, une focntion qui a partir du nombre de jours me renvoie l'année, le mois, le jour du mois, enfin une date exploitable telle quelle...
 
Car j'ai franchement pas envie de me faire suer avec années bissextiles etc( compréhensible d'ailleurs... )
 
Merci d'avance !
 


---------------
L'ingénieur chipset nortiaux : Une iFricandelle svp ! "Spa du pâté, hin!" ©®Janfynette | "La plus grosse collec vivante de bans abusifs sur pattes" | OCCT v12 OUT !
mood
Publicité
Posté le 22-07-2002 à 17:31:35  profilanswer
 

n°180167
Jubijub
Parce que je le VD bien
Posté le 22-07-2002 à 17:52:08  profilanswer
 

tu peux tjs avoir une approximation en divisant par 365.25, puis le modulo par 52.14 (semaines) puis le modulo par 4.33 (mois)...
 
en fait en prenant le nombre moyen d'occurences qu'on rencontre dans chaque catégories...
 
bon, c surement inexploitable pour une SGBD aussi...
 
--->je sors [. ]


---------------
Jubi Photos : Flickr - 500px
n°180175
kemkem42
Posté le 22-07-2002 à 18:07:13  profilanswer
 

perl :)

n°180204
Tetedeienc​h
Head Of God
Posté le 22-07-2002 à 19:11:54  profilanswer
 

L'approximation, comme il sagit de trucs financiers, est pas tres exploitable...
 
Tu peux détailler stp kemkem ?


---------------
L'ingénieur chipset nortiaux : Une iFricandelle svp ! "Spa du pâté, hin!" ©®Janfynette | "La plus grosse collec vivante de bans abusifs sur pattes" | OCCT v12 OUT !
n°180335
Tetedeienc​h
Head Of God
Posté le 23-07-2002 à 00:06:01  profilanswer
 

polom :)


---------------
L'ingénieur chipset nortiaux : Une iFricandelle svp ! "Spa du pâté, hin!" ©®Janfynette | "La plus grosse collec vivante de bans abusifs sur pattes" | OCCT v12 OUT !
n°180376
Tetedeienc​h
Head Of God
Posté le 23-07-2002 à 07:53:01  profilanswer
 

:/


---------------
L'ingénieur chipset nortiaux : Une iFricandelle svp ! "Spa du pâté, hin!" ©®Janfynette | "La plus grosse collec vivante de bans abusifs sur pattes" | OCCT v12 OUT !
n°180478
evode
Meuaarf !! ReZo !!!
Posté le 23-07-2002 à 10:41:24  profilanswer
 

t'as la lib time.h avec notament ctime(const time_t *timep)
le man te donnera d'autre info utiles
 
sinon sous oracle tu peux lui demander de formater la date en chaine de caractere au format ke tu veux => to_char(ta_date_oracle, 'YYYYMMDD';)
passage inverse to_date(ta_date_string, 'YYYYMMDD';) la tu precise a oracle kel est le format de ta date pour k'il la retranscrive comme il veux
 
avec tout ca tu peux recuperer les annees, mois et autres ...
gl


---------------
Hyndex - Meuaarf !! ReZo !!!
n°180502
darkoli
Le Petit Dinosaure Bleu
Posté le 23-07-2002 à 11:08:21  profilanswer
 

Si "2415019" correspond à un nombre de jours écoulés depuis le 01/01/0001, ça donne le 06/02/6613 (à un jour près et si les règles concernant les années bissextiles sont identiques du 01/01/0001 au 06/02/6613 !!!). :D
 
Et, le 01/01/1900 serait le 693136° jours en partant du 01/01/0001


Message édité par darkoli le 23-07-2002 à 11:09:49

---------------
Le site de l'année :D (XHTML 1.0 strict) : http://darkoli.free.fr/index.html
n°180749
Tetedeienc​h
Head Of God
Posté le 23-07-2002 à 14:32:30  profilanswer
 

DarkOli a écrit a écrit :

Si "2415019" correspond à un nombre de jours écoulés depuis le 01/01/0001, ça donne le 06/02/6613 (à un jour près et si les règles concernant les années bissextiles sont identiques du 01/01/0001 au 06/02/6613 !!!). :D
 
Et, le 01/01/1900 serait le 693136° jours en partant du 01/01/0001  




 
2415019 correspond au 01 01 1900 ...


---------------
L'ingénieur chipset nortiaux : Une iFricandelle svp ! "Spa du pâté, hin!" ©®Janfynette | "La plus grosse collec vivante de bans abusifs sur pattes" | OCCT v12 OUT !
n°180751
Tetedeienc​h
Head Of God
Posté le 23-07-2002 à 14:32:59  profilanswer
 

evode a écrit a écrit :

t'as la lib time.h avec notament ctime(const time_t *timep)
le man te donnera d'autre info utiles
 
sinon sous oracle tu peux lui demander de formater la date en chaine de caractere au format ke tu veux => to_char(ta_date_oracle, 'YYYYMMDD';)
passage inverse to_date(ta_date_string, 'YYYYMMDD';) la tu precise a oracle kel est le format de ta date pour k'il la retranscrive comme il veux
 
avec tout ca tu peux recuperer les annees, mois et autres ...
gl




 
Merci, mais finalement, on va etre obligés de coder ca en gap... on va se marrer :(


---------------
L'ingénieur chipset nortiaux : Une iFricandelle svp ! "Spa du pâté, hin!" ©®Janfynette | "La plus grosse collec vivante de bans abusifs sur pattes" | OCCT v12 OUT !
mood
Publicité
Posté le 23-07-2002 à 14:32:59  profilanswer
 

n°181030
darkoli
Le Petit Dinosaure Bleu
Posté le 23-07-2002 à 18:18:25  profilanswer
 

Tetedeiench a écrit a écrit :

 
 
2415019 correspond au 01 01 1900 ...




 
Et le 02 01 1900, c'est quoi ?


---------------
Le site de l'année :D (XHTML 1.0 strict) : http://darkoli.free.fr/index.html
n°181816
Tetedeienc​h
Head Of God
Posté le 24-07-2002 à 16:23:09  profilanswer
 

2415020 pour le 2 janvier ...
 
2515021 pour le 3 janviezr...
 
Etc :)


---------------
L'ingénieur chipset nortiaux : Une iFricandelle svp ! "Spa du pâté, hin!" ©®Janfynette | "La plus grosse collec vivante de bans abusifs sur pattes" | OCCT v12 OUT !

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  [Format] Une date du type "2415019" sous Unix...Comment la convertir?

 

Sujets relatifs
[Windows] Date et heure de démarrage du PC[PHP] Convertir les é è ect...
[MS-DOS] Créer un dossier avec la date du jour[login script] comment recup le user name ou id, la date et l heure ?
[access 2 mysql] comment convertir une BD access en mysql ?[Access] Différence entre deux date format DD/MM/YYYY
incrementer une date de x jours ??[PHP] Comment faire quand on a pas la fonction date('W')
[ACCESS] fonction date 
Plus de sujets relatifs à : [Format] Une date du type "2415019" sous Unix...Comment la convertir?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR