AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Algorithmen, Datenstrukturen und Klassendesign Speichergrößen heutzutage korrekt interpretieren/betiteln
Thema durchsuchen
Ansicht
Themen-Optionen

Speichergrößen heutzutage korrekt interpretieren/betiteln

Ein Thema von KodeZwerg · begonnen am 4. Jul 2018 · letzter Beitrag vom 30. Jul 2018
Antwort Antwort
Seite 3 von 5     123 45      
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#21

AW: Speichergrößen heutzutage korrekt interpretieren/betiteln

  Alt 17. Jul 2018, 08:49
ot
andererseits scheint nachwievor der beliebteste Typ zum Speichern eines Datums der String.
Ich für meinen Teil Speicher Zeitwerte nicht als String.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#22

AW: Speichergrößen heutzutage korrekt interpretieren/betiteln

  Alt 17. Jul 2018, 10:50
Ich für meinen Teil Speicher Zeitwerte nicht als String.
Ich schon, aber wenn dann in einer der eindeutigen ISO-Spezifikationen, welche unabhängig von irgendwelchen lokalen Spracheinstellungen sind.

Beim Speichern verwende ich gern human-readable Formate (selbst wenn darin ein paar der Daten verschlüsselt sind)
und falls doch "platzsparender" Binär gespeichert werden soll, dann keine propitären Formate, sondern nur solche die sich automatisiert in Ersteres umwandeln lassen.

z.B. gibt es XML und JSON auch in binär. (XML sogar teilweise quasi komprimiert)
$2B or not $2B

Geändert von himitsu (17. Jul 2018 um 13:26 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#23

AW: Speichergrößen heutzutage korrekt interpretieren/betiteln

  Alt 17. Jul 2018, 13:07
Liegt bei mir daran das ich Jahrelang nur mit Double/Int64 bei Zeitwerten arbeite. Das es platzsparender ist war mir in diesem Moment egal.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.116 Beiträge
 
Delphi 12 Athens
 
#24

AW: Speichergrößen heutzutage korrekt interpretieren/betiteln

  Alt 17. Jul 2018, 16:02
Zitat:
Und wohlgemerkt: Im Thread geht es erstmal um die Kommunikation zwischen Menschen, bei einem Datumstyp geht es immer um exakte Algorithmen
Nicht immer:
Ich habe neulich Zertifikate aus China bekommen mit Datum im PDF "18.07.13", welche ich erstmal als "outdated" angemeckert habe.

Es hiees darauf, das es in China so geschrieben würde (ich habs mal so hingenommen, ungeckeckt).
Nicht nur Algorithmen haben Probleme damit, echte Menschen auch

Rollo
  Mit Zitat antworten Zitat
freimatz

Registriert seit: 20. Mai 2010
1.456 Beiträge
 
Delphi 11 Alexandria
 
#25

AW: Speichergrößen heutzutage korrekt interpretieren/betiteln

  Alt 23. Jul 2018, 13:40
Könnt Ihr bitte beim Thema bleiben.
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#26

AW: Speichergrößen heutzutage korrekt interpretieren/betiteln

  Alt 24. Jul 2018, 09:30
Ich gehe mal stark davon aus, dass 99% aller Delphi-schreiber die Funktion unten benutzen, um Datengrößen visuell dazustellen.

Zitat:
Khabarakh hat auf Basis seines Codes eine Alternative gepostet, die ohne die Unit Math auskommen sollte:
zusammenfalten · markieren Delphi-Quellcode:
Delphi-Quellcode:
function FileSizeToStr(const ASize: Int64 {für Delphiversionen < 2005 durch Real/Double/Extended ersetzen}; const AUseShortNames: Boolean = true): string;
const
  ShortUnits: Array[0..8] of string = ('Byte', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB');
  LongUnits: Array[0..8] of string = ('B', 'Kilob', 'Megab', 'Gigab', 'Terab', 'Petab', 'Exab', 'Zettab', 'Yottab');
  Epsilon = 1 / 1024; // Wegen der Fließkommaungenauigkeit sicher nie falsch, verhindert außerdem Anzeigen wie "1024 KB"
var
  Index: Integer;
begin
  Index := Trunc(ln(ASize) / ln(2) / 10 + Epsilon);
  if AUseShortNames then
    Result := Format('%.2f %s', [ASize / (Int64(1) shl (Index * 10)), ShortUnits[Index]])
  else
    Result := Format('%.2f %s%s', [ASize / (Int64(1) shl (Index * 10)), LongUnits[Index], 'yte'])
end;
Wie sähe das denn in der Kibi-Schreibweise aus? Muss nur Epsilon auf 1000 geändert werden?
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#27

AW: Speichergrößen heutzutage korrekt interpretieren/betiteln

  Alt 24. Jul 2018, 09:48
Ich gehe mal stark davon aus, dass 99% aller Delphi-schreiber die Funktion unten benutzen, um Datengrößen visuell dazustellen.
Da frag ich mich wie Du Yotta berechnen willst, Int64 reicht da nicht. Und nein, ich machs immer selbst. Ich bin das 1 fehlende Prozent.
Wie sähe das denn in der Kibi-Schreibweise aus? Muss nur Epsilon auf 1000 geändert werden?
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#28

AW: Speichergrößen heutzutage korrekt interpretieren/betiteln

  Alt 24. Jul 2018, 09:53
Endlich mal ein Erfolgserlebnis in meinem Leben

Mir fällt aber noch was auf.
Google gibt bei direkter Eingabe in das Suchfeld 498000 Byte in KiloByte = 498 aus.
In KibiByte sind 498000 Bytes scheinbar 486,328125 KibiByte. Ist das so richtig?
Ich dachte immer Byte * 1024 = KiloByte.

Geändert von DieDolly (24. Jul 2018 um 10:05 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#29

AW: Speichergrößen heutzutage korrekt interpretieren/betiteln

  Alt 24. Jul 2018, 10:06
Endlich mal ein Erfolgserlebnis in meinem Leben

Mir fällt aber noch was auf.
Google gibt bei direkter Eingabe in das Suchfeld 498000 Byte in KiloByte = 498 aus.
In KibiByte sind 498000 Bytes scheinbar 486,328125 KibiByte. Ist das so richtig?
Schon das zweit Glückserlebnis heute, alles richtig gemacht!

edit
Ich dachte immer Byte * 1024 = KiloByte.
Nee, das sind KibiByte bzw KiB.

edit #2
Mist ich glaub ich habe oben nen Fehler:
Byte / 1000 = KiloByte bzw KB
Byte / 1024 = KibiByte bzw KiB <<<< Das ist normalerweiser unter Windowsen das zu nehmende Mittel.
Gruß vom KodeZwerg

Geändert von KodeZwerg (24. Jul 2018 um 10:16 Uhr)
  Mit Zitat antworten Zitat
Frickler

Registriert seit: 6. Mär 2007
Ort: Osnabrück
599 Beiträge
 
Delphi XE6 Enterprise
 
#30

AW: Speichergrößen heutzutage korrekt interpretieren/betiteln

  Alt 24. Jul 2018, 10:11
Ich gehe mal stark davon aus, dass 99% aller Delphi-schreiber die Funktion unten benutzen, um Datengrößen visuell dazustellen.
Da frag ich mich wie Du Yotta berechnen willst, Int64 reicht da nicht. Und nein, ich machs immer selbst. Ich bin das 1 fehlende
Man kommt aber im realen Leben mit 64 Bit aus. Die maximale Dateigröße damit wäre 16 EiB (erreichbar z.B. mit ZFS). Die Großrechner von IBM haben zwar ein 128-Bit Dateisystem, aber die maximale Dateigröße ist trotzdem "nur" bei 1 TiB.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 5     123 45      


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 08:49 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz