![]() |
Format-Strings
Hallo,
montag morgen und schon die ersten probleme ;-) Mein Problem: habe eine zahl 2..3 stellig und die sall asl string der form dargestellt werden: für 124 : '\124' das ist ja kein wirkliches problem aber... für 28: '\028' hier ist die null das problem, ich möchte nicht noch eine zusätzliche abfrage machen, wenn es geht, also hab ich mich um format-strings bemüht...
Delphi-Quellcode:
aber es funzt nicht :wall: obwohl in der oh steht ...
result:=result+format('\%3d',[ZeichenNr]) // ersetzte Zeichen
Zitat:
|
Re: Format-Strings
Du hast den Punkt vor der 3 vergessen.
|
Re: Format-Strings
Hi,
also bei mir steht in der Hilfe, dass die fehlenden Stellen mit Leerzeichen aufgefüllt werden. Das bei entsprechender Ausrichtungsangabe vor oder nach dem String. Mit "0" ist da nichts! Verwende sonst FormatFloat. Hier kannst du als FormatString '000' eintragen und es funzt wie gewollt. Gruß oki |
Re: Format-Strings
Oooops,
war langsammer als MathiasSimmack und er hat auch noch recht. Gruß oki |
Re: Format-Strings
thx at all, so klappts auch mit den nullen :thuimb:
Delphi-Quellcode:
result:=result+format('\%.3d',[ZeichenNr])
|
Re: Format-Strings
Das ist vielleicht das groesste Problem von Format() das es die Format-Strings von C nicht voll uebernommen hat.
Ich hatte schon oefters den Wunsch das mal zu implementieren, aber wenn man den Standard (ja das ist inzwischen standardisiert) liest dann ueberlegt man es sich immer wieder. |
Re: Format-Strings
Zitat:
|
Re: Format-Strings
Es ist nur eine unvollständige "Übersetzung" der String-Formatierungs-Möglichkeiten, wie sie aus C bei printf zum Beispiel möglich sind. das wollte Robert damit wohl sagen.
|
Re: Format-Strings
Genau. Delphi und C sind auch noch dezent inkompatibel bei den Format-Strings.
Vielleicht koennten wir mal ein Projekt dazu anleiern. |
Re: Format-Strings
Zitat:
Delphi-Quellcode:
System.String.Format('{0} - {1} ({2,2:00}:{3,2:00} min)'
,['Filter', 'Welcome to the Fold', 7, 40]);
Code:
String[b][color=#ff0000].[/color][color=#3600aa]Format[/color][color=#ff0000]([/color][/b][color=#ad0000]"{0} - {1} ({2,2:00}:{3,2:00} min)"[/color]
[b][color=#ff0000],[/color][/b][color=#3600aa]new[/color] [b]Object[color=#ff0000][] {[/color][/b][color=#ad0000]"Van Halen"[/color][b][color=#ff0000], [/color][/b][color=#ad0000]"Running with the devil"[/color][b][color=#ff0000], [/color][/b][color=#ad00bb]3[/color][b][color=#ff0000], [/color][/b] [color=#ad00bb]34[/color] [b][color=#ff0000]});[/color][/b] |
Re: Format-Strings
...dieser threat bekommt eine eigendynamic :wink:, lustig, mein problem hatte sich ^ schon gelöst :-D
|
Re: Format-Strings
Zitat:
|
Re: Format-Strings
...also bisher bin ich noch nicht an die grenzen von format() gekommen, was sind denn die großen unterschiede zu c? (da ich c nicht kenne)
|
Re: Format-Strings
Eine der nervigeren Sachen ist das Delphi "%03d" nicht kennt.
Die Null bedeutet das nicht mit Leerzeichen sondern mit Vornullen expandiert wird. Zumindest die Delphi-Hilfe sagt nichts ueber "%X" aus was in C bedeutet das 'A'..'F' genommen wird waehrend "%x" 'a'..'f' benutzt. |
Re: Format-Strings
Zitat:
Irgendwann in näherer Zukunft wird sich wohl jeder damit beschäftigen ( müssen ). Zitat:
|
Re: Format-Strings
Und wo bleiben dann die bisherigen Delphi-Entwickler?
Es nuetzt ja nichts wenn .net alles bietet, aber das eigene Delphi-Projekt durchhaengt weil man am Format() verzweifelt. |
Re: Format-Strings
Zitat:
Zitat:
|
Re: Format-Strings
Meine urspruengliche Beschwerde war das Format strings nicht voellig mit C kompatibel sind. "%03d" ist eben so ein Fall.
"%X" geht mit Format, aber die Dokumentation laesst sehr zu wuenschen uebrig. |
Re: Format-Strings
Zitat:
Ich kann mich aber noch an Luckies DLL-Export erinnern. Er hat dort im Original als Format "%p" benutzt, um eine Zeigeradresse anzuzeigen. Allerdings war das OS-abhängig (s. PSDK), aber ein
Delphi-Quellcode:
tat´s dann auch. ;)
Format('%.8X', [Integer(DLLInfo.FuncAddresses[i])]);
|
Re: Format-Strings
Zitat:
|
Re: Format-Strings
Hi,
also mir ist es wurscht, ob C und Delphi bei Format kompatibel sind. Ich programmiere halt in Delphi und gewöhne mir damit den Delphi-Syntax an. Es sind halt auch zwei unterschiedliche Sprachen. Ich denke wenn ich mehr in C machen wollte müßte ich mir an anderer Stelle mehr den Kopf zerbrechen als über den Syntax von Format. Was auch mich nervt ist die OH. Da steht wirklich nicht viel sinnvolles drin. Dann muß ich hier auch feststellen dass sie zu tiefst unvollständig ist. Kann jemand sagen wo mann zum Delphi "Format" eine ordentliche Beschreibung erhält? Gruß oki |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:53 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