Autor |
Beitrag |
Darth Sitthiander
      
Beiträge: 95
|
Verfasst: Sa 18.03.06 19:15
Ich hoffe ich habe hier dn richtigen Thread erwischt. Also folgendes. Ich habe sowas einfaches wie eine Art WordPad porgrammiert und möchte nun, dass es mir in einem Label anzeigt, wie gross die spätere Textdatei der Memo wird. Also genauer:
Ich habe eine Memo in die ich schreiben kann, ich habe einen label und einen button und den inhalt der memo in eine Textdatei zu speichern. das gelingt perfekt. Allerdings möchte ich nun, das zum vorherein schon im label steht wie gross die datei später wird. Das soll dann in einem Timer geschehen. Kann mir einer helfen? Danke im Vorraus.
|
|
AXMD
      
Beiträge: 4006
Erhaltene Danke: 7
Windows 10 64 bit
C# (Visual Studio 2019 Express)
|
Verfasst: Sa 18.03.06 19:19
Length(Memo1.Text) sofern es ein Memo, und kein RichEdit ist
AXMD
|
|
Marco D.
      
Beiträge: 2750
Windows Vista
Delphi 7, Delphi 2005 PE, PHP 4 + 5 (Notepad++), Java (Eclipse), XML, XML Schema, ABAP, ABAP OO
|
Verfasst: Sa 18.03.06 19:19
Darth Sitthiander hat folgendes geschrieben: | das zum vorherein schon im label steht wie gross die datei später wird. Das soll dann in einem Timer geschehen. |
Ich verstehe nicht, was in dieser Problematik ein Timer zu suchen hat
Theoretisch: Ein Zeichen hat ein Byte. Dann gehst du jede Zeile durch, zählst die Zeichen und addierst das ganze.
_________________ Pascal keeps your hand tied. C gives you enough rope to hang yourself. C++ gives you enough rope to shoot yourself in the foot
|
|
proprogrammierer
      
Beiträge: 43
Delphi 5, Delphi 2005
|
Verfasst: Sa 18.03.06 19:19
wie groß in byte oder in zeilen oder was?
|
|
Darth Sitthiander 
      
Beiträge: 95
|
Verfasst: Sa 18.03.06 19:49
Hey danke jetzt geht. Allerding isses noch ncht so genau. Wisst ihr wie ich dezimalzahlen kriege. Ich hab flaottostr probiert. das ging ja auch, aber es gab keine dezimalzahlen. Dann hab ich floattostrF probiert, und das ging nicht mehr:
Delphi-Quelltext 1: 2: 3:
| Label1.caption:='Anzahl Wörter: '+IntToStr(count(Memo1.Text)); Label2.caption:='Anzahl Zeilen: '+IntToStr((Memo1.Lines.Count)); Label3.caption:='Grösse der Textdatei: '+IntToStr((Length(Memo1.Text)))+' Bytes'+' = '+Inttostr((Length(Memo1.Text))div 1024)+' KB'; |
|
|
Darth Sitthiander 
      
Beiträge: 95
|
Verfasst: So 19.03.06 18:10
Hat denn niemand ne lösung?
Schuldigung für den doppelpost, aber ich hätte gern ne antwort.
ich habe den code jetzt so:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| procedure TWritepro.Timer1Timer(Sender: TObject); var a:string; b:integer; begin b:=(Length(Memo1.Text))div 1024; a:= CurrToStrF(b, ffNumber, 3); Label1.caption:='Anzahl Wörter: '+IntToStr(count(Memo1.Text)); Label2.caption:='Anzahl Zeilen: '+IntToStr((Memo1.Lines.Count)); Label3.caption:='Grösse der Textdatei: '+IntToStr((Length(Memo1.Text)))+' Bytes'+' = '+a+' KB'; end; |
Aber er schrieibt es so:
Grösse der Textdatei: 2900 Bytes = 2.000 KB
Danke im Vorraus
Ich hätt aber gern wenn er es so schreiben würde:
Grösse der Textdatei: 2900 Bytes = 2.832 KB
|
|
AXMD
      
Beiträge: 4006
Erhaltene Danke: 7
Windows 10 64 bit
C# (Visual Studio 2019 Express)
|
Verfasst: So 19.03.06 18:17
Du darfst dich diesbezüglich nicht wundern, wenn du div 1024 rechnest. Du musst / 1024 rechnen und dann den Wert in einen String umwandeln, dann geht's.
AXMD
PS. Schiebepostings sind nach (ca.  ) 24 Stunden erlaubt.
|
|
Darth Sitthiander 
      
Beiträge: 95
|
Verfasst: So 19.03.06 18:21
LOL, danke. Es sind eben die kleinsten Dinge die das grösste Problem ausmachen^^
Das mit den Schiebepostings wusst ich nicht danke.
|
|
raiguen
      
Beiträge: 374
WIN 2000prof, WIN XP prof
D7EP, MSSQL, ABSDB
|
Verfasst: So 19.03.06 18:30
Moin
Zitat aus der OH zu arithmetischen Operatoren:
Der Wert von x div y entspricht dem Wert von x/y, abgerundet in Richtung Null bis zum nächsten Integer-Wert.
Mit anderne worten: du wirst nie einen Dezimal-, sondern immer nur ein Integerwert herausbekommen.
Gruß
//EDIT: arrghhh, zu spät 
|
|
Darth Sitthiander 
      
Beiträge: 95
|
Verfasst: So 19.03.06 18:42
Was ist di OH? Sorry wenn ich der einzige hier bin der das nicht weiss.
|
|
Born-to-Frag
      
Beiträge: 1094
Win XP SP2, Win 2000 SP4
Delphi 7, 2k5
|
Verfasst: So 19.03.06 19:06
Darth Sitthiander hat folgendes geschrieben: | Was ist di OH? Sorry wenn ich der einzige hier bin der das nicht weiss. |
Delphi Online Hilfe
greetz
_________________ Theorie ist wenn man alles weiß, aber nichts funktioniert. Praxis ist wenn alles funktioniert, aber niemand weiß warum.
Microsoft vereint Theorie und Praxis: Nichts funktioniert und niemand weiß warum.
|
|
Darth Sitthiander 
      
Beiträge: 95
|
Verfasst: So 19.03.06 19:13
Sorry aber wo find ich die? xD^^
|
|
Danniolo
      
Beiträge: 693
|
Verfasst: So 19.03.06 19:55
Hilfe -> Inhalt
bzw.:
Help -> Delphi Help
bzw.:
Hirn anschalten
|
|
Darth Sitthiander 
      
Beiträge: 95
|
Verfasst: So 19.03.06 20:00
Danniolo hat folgendes geschrieben: | Hilfe -> Inhalt
bzw.:
Help -> Delphi Help
bzw.:
Hirn anschalten |
dachte es sei sowas wie wikipedia
|
|