AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Google Chrome Time nach TDateTime

Offene Frage von "Bummi"
Ein Thema von Shark99 · begonnen am 15. Sep 2012 · letzter Beitrag vom 16. Sep 2012
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.645 Beiträge
 
#1

AW: Google Chrome Time nach TDateTime

  Alt 15. Sep 2012, 11:59
Was bitte ist ein Datumsstring von "Google Chrome"? Meinst Du den Wert eines Javascript-Date Objektes? Schliesslich ist Chrome nur ein Webkit-Browser mit der V8 Javascript-Engine.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#2

AW: Google Chrome Time nach TDateTime

  Alt 15. Sep 2012, 12:26
Ich denke diese Funktion ist gut erklärt und kann einfach umgebaut werden.

Mich würde aber auch interessieren, wo solche merkwürdigen Timestamps in Chrome verwendet werden.
Intellekt ist das Verstehen von Wissen. Verstehen ist der wahre Pfad zu Einsicht. Einsicht ist der Schlüssel zu allem.
  Mit Zitat antworten Zitat
Shark99

Registriert seit: 16. Mai 2007
403 Beiträge
 
#3

AW: Google Chrome Time nach TDateTime

  Alt 15. Sep 2012, 17:07
Was bitte ist ein Datumsstring von "Google Chrome"? Meinst Du den Wert eines Javascript-Date Objektes? Schliesslich ist Chrome nur ein Webkit-Browser mit der V8 Javascript-Engine.
Chrome schreibt verschiedene Data Files (Bookmarks, History etc) in JSON format, dort gibt es die Datum Strings eben in diesem Windows NT Zeitformat, aber mit 17 statt 18 stellen.

Ich denke diese Funktion ist gut erklärt und kann einfach umgebaut werden..
Das war meine Ausgangsbasis. Habe in einem Thread den Tip bekommen die rechten 6 Stellen abzuschneiden von dem Chrome Zeitstring und dann die Unix Time konvertierung anzuwenden. Leider kam dabei dann das Jahr 23xx raus.
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.645 Beiträge
 
#4

AW: Google Chrome Time nach TDateTime

  Alt 15. Sep 2012, 17:34
Wenn es JSON ist, hast Du einfach mal versucht das als einen Javascript-Date-Wert zu verarbeiten?
Der einfachste Check wäre, ein new Date('value') in der Chrome-Javascript Console (Developer tools) zu machen, und dann zu schauen ob da was Sinnvolles bei rauskommt.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Shark99

Registriert seit: 16. Mai 2007
403 Beiträge
 
#5

AW: Google Chrome Time nach TDateTime

  Alt 15. Sep 2012, 17:38
Es kommt dann 'Invalid date'
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#6

AW: Google Chrome Time nach TDateTime

  Alt 15. Sep 2012, 18:17
Mhm, ich habe es eben auch nicht so hingekriegt

Egal, dann eben ohne überlegen:
Code:
const factor = 1.45218472707248E-12;
const StartDate: TDateTime = 22282 {1.1.1961};

function DateTimeToChrome(ConvDate: TDateTime): UInt64 ;
begin
Result := round((ConvDate - StartDate) / factor);
end;

function ChromeToDateTime(ticks: UInt64): TDateTime;
begin
  Result := (ticks * factor) + StartDate;
end;

function calcFactor: double;
begin
  result := (StrToDateTime('25.08.2012 09:25:01') - StartDate)/12990353101092500.0;
end;
Jetzt Daumen drücken und hoffen (=> Testen), dass es wirklich so linear geht
Intellekt ist das Verstehen von Wissen. Verstehen ist der wahre Pfad zu Einsicht. Einsicht ist der Schlüssel zu allem.

Geändert von BUG (15. Sep 2012 um 18:19 Uhr)
  Mit Zitat antworten Zitat
Shark99

Registriert seit: 16. Mai 2007
403 Beiträge
 
#7

AW: Google Chrome Time nach TDateTime

  Alt 16. Sep 2012, 01:27
BUG, danke für den Versuch, aber es klappt noch nicht.

Hab so getestet:

procedure TForm1.Button1Click(Sender: TObject);
begin
Caption := DateTimeToStr(ChromeToDateTime(12990353101092500)) ;
end;

Ergebnis: 00.00.0000 14:40:47
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#8

AW: Google Chrome Time nach TDateTime

  Alt 16. Sep 2012, 07:37
Folgendes bedürfte IMHO noch der Zeitzonen und Sommerzeitbehandlung, ansonsten meine ich passt es
Delphi-Quellcode:
Function MyDateTime(d:Double):TdateTime;
begin
  Result := (d/1000000 + EncodeDate(1601,1,1) * (24*60*60))/(24*60*60) ;
end;
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#9

AW: Google Chrome Time nach TDateTime

  Alt 16. Sep 2012, 07:48
Irgendwie riecht das so, als ob man mit Delphi-Referenz durchsuchenFileDateToDateTime da weiter kommt
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Shark99

Registriert seit: 16. Mai 2007
403 Beiträge
 
#10

AW: Google Chrome Time nach TDateTime

  Alt 16. Sep 2012, 09:46
Folgendes bedürfte IMHO noch der Zeitzonen und Sommerzeitbehandlung, ansonsten meine ich passt es
Delphi-Quellcode:
Function MyDateTime(d:Double):TdateTime;
begin
  Result := (d/1000000 + EncodeDate(1601,1,1) * (24*60*60))/(24*60*60) ;
end;
Wie wende ich deinen Code auf das Beispieldatum 12990353101092500 an?

Irgendwie riecht das so, als ob man mit Delphi-Referenz durchsuchenFileDateToDateTime da weiter kommt
FileDateToDateTime erwartet einen Integer, das Beispieldatum 12990353101092500 ist jedoch ULONG btw Int64.

Geändert von Shark99 (16. Sep 2012 um 09:51 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:30 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz